diff --git a/README.en.md b/README.en.md index 1e61e06fa8e57018bc417ea95f8f4ab5d4f4a0eb..92793bffb26a148a1ef93f5a7cbc92669e592ca6 100644 --- a/README.en.md +++ b/README.en.md @@ -1,7 +1,7 @@ # vendor_hardmony #### Description -{**When you're done, you can delete the content in this README and update the file with details for others getting started with your repository**} + #### Software Architecture Software architecture description @@ -28,9 +28,3 @@ Software architecture description #### Gitee Feature -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) -4. The most valuable open source project [GVP](https://gitee.com/gvp) -5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) -6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/README.md b/README.md index 0420314ded0d2f79522fd0ecb370b0256b0f6816..57b8eb2e2e7fe77dc2093700ca575f372b474067 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,7 @@ # vendor_hardmony #### 介绍 -{**以下是 Gitee 平台说明,您可以替换此简介** -Gitee 是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN)。专为开发者提供稳定、高效、安全的云端软件开发协作平台 -无论是个人、团队、或是企业,都能够用 Gitee 实现代码托管、项目管理、协作开发。企业项目请看 [https://gitee.com/enterprises](https://gitee.com/enterprises)} + #### 软件架构 软件架构说明 @@ -31,9 +29,4 @@ Gitee 是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN #### 特技 -1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md -2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) -3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 -4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 -5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) -6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) + diff --git a/oriole/.gitignore b/oriole/.gitignore new file mode 100755 index 0000000000000000000000000000000000000000..5b0fe13c9499730ae55d58c3f276307b6eb2fc63 --- /dev/null +++ b/oriole/.gitignore @@ -0,0 +1,7 @@ +hdf_config/khdf/.built-in.a.cmd +hdf_config/khdf/.hdf_hcs_hex.o.d +hdf_config/khdf/.modules.order.cmd +hdf_config/khdf/built-in.a +hdf_config/khdf/hdf_hcs.hcb +hdf_config/khdf/hdf_hcs_hex.o +hdf_config/khdf/modules.order diff --git a/oriole/bundle.json b/oriole/bundle.json new file mode 100644 index 0000000000000000000000000000000000000000..fb3d6f9935782a06e0a505207e585e59eafc55b8 --- /dev/null +++ b/oriole/bundle.json @@ -0,0 +1,48 @@ +{ + "name": "@ohos/product_oriole", + "description": "vendor bundle.", + "version": 3.2, + "license": "Apache License 2.0", + "publishAs": "code-segment", + "segment": { + "destPath": "vendor/hardmony/oriole" + }, + "dirs": {}, + "scripts": {}, + "component": { + "name": "product_oriole", + "subsystem": "product_oriole", + "syscap": [], + "features": [], + "adapted_system_type": [ "standard"], + "hisysevent_config": [], + "rom": "", + "ram": "", + "deps": { + "components": [ + "soc_common", + "platform_common", + "init", + "c_utils", + "hilog" + ], + "third_party": [] + }, + "build": { + "sub_component": [ + "//vendor/hardmony/oriole/default_app_config:default_app_config", + "//vendor/hardmony/oriole/image_conf:custom_image_conf", + "//vendor/hardmony/oriole/preinstall-config:preinstall-config", + "//vendor/hardmony/oriole/resourceschedule:resourceschedule", + "//vendor/hardmony/oriole/foundation_config:foundation_config", + "//vendor/hardmony/oriole/dm_config:dm_config", + "//vendor/hardmony/oriole/wm_config:wm_config", + "//vendor/hardmony/oriole/etc:product_etc_conf", + "//vendor/hardmony/oriole/hdf_config/uhdf:hdf_config", + "//vendor/hardmony/oriole/hals/audio:hdf_audio_config" + ], + "inner_kits":[], + "test": [] + } + } +} diff --git a/oriole/config.json b/oriole/config.json new file mode 100755 index 0000000000000000000000000000000000000000..0014d1541c894bcb75e99b25ffd6da4d38e53a7d --- /dev/null +++ b/oriole/config.json @@ -0,0 +1,97 @@ +{ + "product_name": "oriole", + "device_company": "hardmony", + "device_build_path": "device/board/hardmony/oriole", + "target_cpu": "arm64", + "type": "standard", + "version": "3.0", + "board": "oriole", + "api_version": 8, + "enable_ramdisk": true, + "build_selinux": false, + "build_seccomp": false, + "device_stack_size": 8388608, + "inherit": [ "productdefine/common/inherit/rich.json", "productdefine/common/inherit/chipset_common.json" ], + "subsystems": [ + { + "subsystem": "security", + "components": [ + { + "component": "selinux_adapter", + "features": [ + "selinux_enforce = false" + ] + } + ] + }, + { + "subsystem": "device_oriole", + "components": [ + { + "component": "device_oriole", + "features": [] + } + ] + }, + { + "subsystem": "arkui", + "components": [ + { + "component": "ace_engine", + "features": [ + "ace_engine_feature_enable_accessibility = true", + "ace_engine_feature_enable_web = true" + ] + }, + { + "component": "ui_appearance", + "features": [] + } + ] + }, + { + "subsystem": "thirdparty", + "components": [ + { + "component": "wpa_supplicant", + "features": [ + "wpa_supplicant_driver_nl80211 = true", + "wpa_supplicant_driver_nl80211_sprd = true" + ] + } + ] + }, + { + "subsystem": "startup", + "components": [ + { + "component": "init", + "features": [ + "enable_ohos_startup_init_feature_ab_partition = true", + "enable_ohos_startup_init_feature_loader = true" + ] + } + ] + }, + { + "subsystem": "product_oriole", + "components": [ + { + "component": "product_oriole", + "features": [] + } + ] + }, + { + "subsystem": "graphic", + "components": [ + { + "component": "graphic_2d", + "features": [ + "graphic_2d_feature_ace_enable_gpu = true" + ] + } + ] + } + ] +} diff --git a/oriole/default_app_config/BUILD.gn b/oriole/default_app_config/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..7b1d43eb88e8ea5c4bd6ad52dbe9df1d83006e38 --- /dev/null +++ b/oriole/default_app_config/BUILD.gn @@ -0,0 +1,24 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# 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. + +import("//build/ohos.gni") + +ohos_prebuilt_etc("default_app_detail_config") { + source = "./default_app.json" + relative_install_dir = "app" + part_name = "product_oriole" +} + +group("default_app_config") { + deps = [ ":default_app_detail_config" ] +} diff --git a/oriole/default_app_config/default_app.json b/oriole/default_app_config/default_app.json new file mode 100644 index 0000000000000000000000000000000000000000..0637a088a01e8ddab3bf3fa98dbe804cbde1a0dc --- /dev/null +++ b/oriole/default_app_config/default_app.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/oriole/dm_config/BUILD.gn b/oriole/dm_config/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..ddb8e4cfe3b90036ebb03b4160240f25c546e61d --- /dev/null +++ b/oriole/dm_config/BUILD.gn @@ -0,0 +1,27 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# 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. + +import("//build/ohos.gni") + +ohos_prebuilt_etc("display_manager_config") { + source = "display_manager_config.xml" + install_enable = true + relative_install_dir = "window/resources" + part_name = "product_oriole" +} + +group("dm_config") { + deps = [ + ":display_manager_config" + ] +} diff --git a/oriole/dm_config/display_manager_config.xml b/oriole/dm_config/display_manager_config.xml new file mode 100644 index 0000000000000000000000000000000000000000..43e9d1e3efbeeb18b89456a538a68402769e6143 --- /dev/null +++ b/oriole/dm_config/display_manager_config.xml @@ -0,0 +1,57 @@ + + + + + 400 + + + 0 + + + + + + + + + + 0 0 0 0 + + + + + + + + + + + + + + + + + + + 0 + + + + + + 0 + diff --git a/oriole/etc/BUILD.gn b/oriole/etc/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..3dd3678e30b767c788f0931d6d147c640e28febc --- /dev/null +++ b/oriole/etc/BUILD.gn @@ -0,0 +1,37 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# 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. + +import("//build/ohos.gni") + +ohos_prebuilt_etc("para_for_chip_prod") { + source = "./para/hardware_oriole.para" + install_images = [ chip_prod_base_dir, chipset_base_dir ] + relative_install_dir = "param" + part_name = "product_oriole" + subsystem_name = "product_oriole" +} + +ohos_prebuilt_etc("para_for_sys_prod") { + source = "./para/product_oriole.para" + install_images = [ sys_prod_base_dir ] + relative_install_dir = "param" + part_name = "product_oriole" + subsystem_name = "product_oriole" +} + +group("product_etc_conf") { + deps = [ + ":para_for_chip_prod", + ":para_for_sys_prod", + ] +} diff --git a/oriole/etc/para/hardware_oriole.para b/oriole/etc/para/hardware_oriole.para new file mode 100644 index 0000000000000000000000000000000000000000..f62bc15158812c693ede28691cf67621c325fee5 --- /dev/null +++ b/oriole/etc/para/hardware_oriole.para @@ -0,0 +1,19 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# 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. + +const.product.hardwareversion=default +const.product.name="开发者手机" +const.product.model=oriole +const.product.manufacturer=laval.csdn.net +const.product.software.version=OHarm OS 2.0 +const.product.oharm.version=2.0.609 \ No newline at end of file diff --git a/oriole/etc/para/product_oriole.para b/oriole/etc/para/product_oriole.para new file mode 100644 index 0000000000000000000000000000000000000000..9c5360a00c87f2f991e6a8f211d51640d994a54d --- /dev/null +++ b/oriole/etc/para/product_oriole.para @@ -0,0 +1,15 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# 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. + +const.product.brand=default +const.build.product=default \ No newline at end of file diff --git a/oriole/foundation_config/BUILD.gn b/oriole/foundation_config/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..b8e487f451a9e05dfccdecb4e0812fce6d891b58 --- /dev/null +++ b/oriole/foundation_config/BUILD.gn @@ -0,0 +1,30 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# 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. + +import("//build/ohos.gni") + +import("//build/ohos.gni") + +ohos_prebuilt_etc("foundation_service_config") { + source = "foundation.cfg" + install_enable = true + install_images = [ "vendor" ] + module_install_dir = "etc/init" + part_name = "product_oriole" +} + +group("foundation_config") { + deps = [ + ":foundation_service_config" + ] +} diff --git a/oriole/foundation_config/foundation.cfg b/oriole/foundation_config/foundation.cfg new file mode 100644 index 0000000000000000000000000000000000000000..8fc6132c6dfd5b7cbf528f055269f67a458f0585 --- /dev/null +++ b/oriole/foundation_config/foundation.cfg @@ -0,0 +1,114 @@ +{ + "jobs" : [{ + "name" : "services:foundation", + "cmds" : [ + "mkdir /data/service/el1/public/AbilityManagerService 0711 foundation system", + "mkdir /data/storage/el1/bundle 0711 system system", + "mkdir /data/storage/el2/base 0711 system system", + "mkdir /data/storage/el2/database 0711 system system", + "mkdir /data/service/el1/public/notification 0711 foundation system", + "mkdir /data/service/el1/public/database 0711 ddms ddms", + "mkdir /data/service/el1/public/database/bundle_manager_service 02770 foundation ddms", + "mkdir /data/service/el1/public/database/notification_service 02770 foundation ddms", + "mkdir /data/service/el1/public/database/form_storage 02770 foundation ddms", + "mkdir /data/service/el0/stats 0711 foundation system", + "mkdir /data/service/el0/thermal 0755 foundation foundation", + "mkdir /data/service/el0/thermal/config 0711 foundation foundation", + "chmod 0664 /sys/power/wakeup_count", + "mkdir /data/service/el1/public/window 0711 foundation foundation", + "mkdir /data/service/el1/public/database/common_event_service 02770 foundation ddms", + "mkdir /data/service/el1/public/database/auto_startup_service 02770 foundation ddms", + "mkdir /data/service/el1/public/database/app_exit_reason 02770 foundation ddms" + ] + } , { + "name" : "services:restartfoundation", + "cmds" : [ + "reset appspawn", + "reset accountmgr", + "reset bgtaskmgr_service", + "reset resource_schedule_service", + "reset device_usage_stats_service", + "stop dlp_permission_service", + "start bootanimation" + ] + } + ], + "services" : [{ + "name" : "foundation", + "path" : ["/system/bin/sa_main", "/system/profile/foundation.json"], + "critical" : [0, 4, 240], + "importance" : -20, + "uid" : "foundation", + "permission" : [ + "ohos.permission.INPUT_MONITORING", + "ohos.permission.PERMISSION_USED_STATS", + "ohos.permission.DISTRIBUTED_SOFTBUS_CENTER", + "ohos.permission.DISTRIBUTED_DATASYNC", + "ohos.permission.MANAGE_AUDIO_CONFIG", + "ohos.permission.WRITE_CALL_LOG", + "ohos.permission.READ_CONTACTS", + "ohos.permission.READ_DFX_SYSEVENT", + "ohos.permission.GRANT_SENSITIVE_PERMISSIONS", + "ohos.permission.REVOKE_SENSITIVE_PERMISSIONS", + "ohos.permission.MANAGE_SECURE_SETTINGS", + "ohos.permission.START_ABILITIES_FROM_BACKGROUND", + "ohos.permission.ACCESS_SERVICE_DM", + "ohos.permission.STORAGE_MANAGER", + "ohos.permission.PROXY_AUTHORIZATION_URI", + "ohos.permission.ABILITY_BACKGROUND_COMMUNICATION", + "ohos.permission.USE_USER_IDM", + "ohos.permission.MANAGE_LOCAL_ACCOUNTS", + "ohos.permission.LISTEN_BUNDLE_CHANGE", + "ohos.permission.GET_TELEPHONY_STATE", + "ohos.permission.SEND_MESSAGES", + "ohos.permission.CONNECT_CELLULAR_CALL_SERVICE", + "ohos.permission.SET_TELEPHONY_STATE", + "ohos.permission.VIBRATE", + "ohos.permission.SYSTEM_LIGHT_CONTROL", + "ohos.permission.MANAGE_HAP_TOKENID", + "ohos.permission.WRITE_WHOLE_CALENDAR", + "ohos.permission.UPDATE_CONFIGURATION", + "ohos.permission.REPORT_RESOURCE_SCHEDULE_EVENT", + "ohos.permission.START_INVISIBLE_ABILITY", + "ohos.permission.GET_BUNDLE_INFO", + "ohos.permission.GET_SUSPEND_STATE", + "ohos.permission.PUBLISH_SYSTEM_COMMON_EVENT", + "ohos.permission.GET_BUNDLE_INFO_PRIVILEGED", + "ohos.permission.GET_SENSITIVE_PERMISSIONS", + "ohos.permission.CLEAN_APPLICATION_DATA", + "ohos.permission.REMOVE_CACHE_FILES", + "ohos.permission.INSTALL_SANDBOX_BUNDLE", + "ohos.permission.USE_BLUETOOTH", + "ohos.permission.CONNECTIVITY_INTERNAL", + "ohos.permission.GET_RUNNING_INFO", + "ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS", + "ohos.permission.ACCESS_BLUETOOTH", + "ohos.permission.RUNNING_STATE_OBSERVER" + ], + "permission_acls":[ + "ohos.permission.MANAGE_HAP_TOKENID", + "ohos.permission.GRANT_SENSITIVE_PERMISSIONS", + "ohos.permission.INPUT_MONITORING", + "ohos.permission.REVOKE_SENSITIVE_PERMISSIONS", + "ohos.permission.START_INVISIBLE_ABILITY", + "ohos.permission.INSTALL_SANDBOX_BUNDLE" + ], + "gid" : ["system", "appspawn", "update"], + "caps" : ["SYS_PTRACE", "KILL"], + "bootevents": [ + "bootevent.wms.fullscreen.ready", + "bootevent.appfwk.ready", + "bootevent.lockscreen.ready" + ], + "jobs" : { + "on-start" : "services:foundation", + "on-restart" : "services:restartfoundation" + }, + "secon" : "u:r:foundation:s0", + "writepid" : [ + "/dev/cpuset/foreground/tasks", + "/dev/cpuctl/foreground/tasks" + ] + } + ] +} diff --git a/oriole/hals/audio/BUILD.gn b/oriole/hals/audio/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..a9c70e7abcf5dcdd674858f18356c4e7745128a2 --- /dev/null +++ b/oriole/hals/audio/BUILD.gn @@ -0,0 +1,123 @@ +# Copyright (C) 2023 HiHope Open Source Organization . +# 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. + +import("//build/ohos.gni") + +ohos_prebuilt_etc("hdf_alsa_paths_json") { + source = "alsa_paths.json" + + relative_install_dir = "hdfconfig" + install_images = [ chipset_base_dir ] + subsystem_name = "hdf" + part_name = "product_oriole" +} + +ohos_prebuilt_etc("hdf_alsa_adapter_json") { + source = "alsa_adapter.json" + + relative_install_dir = "hdfconfig" + install_images = [ chipset_base_dir ] + subsystem_name = "hdf" + part_name = "product_oriole" +} + +ohos_prebuilt_etc("hdf_audio_effect_json") { + source = "audio_effect.json" + + relative_install_dir = "hdfconfig" + install_images = [ chip_prod_base_dir ] + subsystem_name = "hdf" + part_name = "product_oriole" +} + +ohos_prebuilt_etc("hdf_audio_path_json") { + source = "audio_paths.json" + + relative_install_dir = "hdfconfig" + install_images = [ chipset_base_dir ] + subsystem_name = "hdf" + part_name = "product_oriole" +} + +ohos_prebuilt_etc("hdf_audio_adapter_json") { + source = "audio_adapter.json" + + relative_install_dir = "hdfconfig" + install_images = [ chipset_base_dir ] + subsystem_name = "hdf" + part_name = "product_oriole" +} + +ohos_prebuilt_etc("audio_policy_config") { + if (target_cpu == "arm64") { + source = "config/arm64/audio_policy_config.xml" + } else { + source = "config/arm/audio_policy_config.xml" + } + subsystem_name = "hdf" + relative_install_dir = "audio" + install_images = [ chipset_base_dir ] + part_name = "product_oriole" +} + +ohos_prebuilt_etc("audio_param_audio_structure") { + source = "param/audio_structure" + subsystem_name = "hdf" + relative_install_dir = "audio" + install_images = [ chipset_base_dir ] + part_name = "product_oriole" +} + +ohos_prebuilt_etc("audio_param_cvs") { + source = "param/cvs" + subsystem_name = "hdf" + relative_install_dir = "audio" + install_images = [ chipset_base_dir ] + part_name = "product_oriole" +} + +ohos_prebuilt_etc("audio_param_dsp_smartamp") { + source = "param/dsp_smartamp" + subsystem_name = "hdf" + relative_install_dir = "audio" + install_images = [ chipset_base_dir ] + part_name = "product_oriole" +} + +ohos_prebuilt_etc("audio_param_dsp_vbc") { + source = "param/dsp_vbc" + subsystem_name = "hdf" + relative_install_dir = "audio" + install_images = [ chipset_base_dir ] + part_name = "product_oriole" +} + +group("hdf_audio_config") { + deps = [ + ":hdf_alsa_adapter_json", + ":hdf_alsa_paths_json", + ":audio_policy_config", + ":hdf_audio_adapter_json", + ":hdf_audio_effect_json", + ":hdf_audio_path_json", + ":audio_param_audio_structure", + ":audio_param_cvs", + ":audio_param_dsp_smartamp", + ":audio_param_dsp_vbc", + ] +} + +group("hdi_service_st") { + testonly = true + deps = [ "//drivers/peripheral/audio/test/systemtest/hdi_service/rk3568:hdi_service_hardwaredependence" ] +} diff --git a/oriole/hals/audio/alsa_adapter.json b/oriole/hals/audio/alsa_adapter.json new file mode 100644 index 0000000000000000000000000000000000000000..0805746a111f50f90ae138e1aca31d612ac112cf --- /dev/null +++ b/oriole/hals/audio/alsa_adapter.json @@ -0,0 +1,14 @@ +{ + "adapters": [ + { + "name": "primary", + "cardId": 0, + "cardName": "sprdphonesc2730" + }, + { + "name": "hdmi", + "cardId": 1, + "cardName": "rockchiphdmi" + } + ] +} diff --git a/oriole/hals/audio/alsa_paths.json b/oriole/hals/audio/alsa_paths.json new file mode 100644 index 0000000000000000000000000000000000000000..72218de4d14fc7c3456f3e4477f7705dbb7c6bde --- /dev/null +++ b/oriole/hals/audio/alsa_paths.json @@ -0,0 +1,2948 @@ +{ + "hdf_audio_codec_primary_dev0": [ + { + "deep-buffer-playback": [ + { + "headphones": [ + { + "name": "Playback Path", + "value": "2" + } + ], + "Speaker": [ + { + "name": "VBC_IIS_TX0_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_TX1_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_MASTER_ENALBE", + "value": "0" + }, + { + "name": "VBC_IIS_MST_SEL_0_TYPE", + "value": "0" + }, + { + "name": "VBC_MUX_DAC0_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_DAC1_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS3_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_MST_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS2_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_IIS_RX0_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX1_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX2_WD_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC0_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC1_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC2_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC3_IIS_PORT_SEL", + "value": "3" + }, + { + "name": "VBC_SRC_BT_DAC", + "value": "48000" + }, + { + "name": "VBC_SRC_BT_ADC", + "value": "48000" + }, + { + "name": "VBC_VOLUME", + "value": "0" + }, + { + "name": "ADC_1 Gain ADC_1 Capture Volume", + "value": "7" + }, + { + "name": "ADC_2 Gain ADC_2 Capture Volume", + "value": "7" + }, + { + "name": "ADC_3 Gain ADC_3 Capture Volume", + "value": "6" + }, + { + "name": "DAC Gain DAC Playback Volume", + "value": "2" + }, + { + "name": "ag_iis2_ext_sel_v2", + "value": "0" + }, + { + "name": "VBC DAC0 DSP MDG Set", + "value": "0 0" + }, + { + "name": "VBC DAC1 DSP MDG Set", + "value": "0 0" + }, + { + "name": "VBC DAC0 AUD MDG Set", + "value": "0 0" + }, + { + "name": "VBC DAC0 AUD23 MDG Set", + "value": "0 0" + }, + { + "name": "VBC_UL_MUTE", + "value": "0" + }, + { + "name": "VBC_DL_MUTE", + "value": "0" + }, + { + "name": "VBC_IIS_TX0_LRMOD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX2_LRMOD_SEL", + "value": "0" + }, + { + "name": "DAC LRCLK Select", + "value": "0" + }, + { + "name": "ADC LRCLK Select", + "value": "1" + }, + { + "name": "ADC1 LRCLK Select", + "value": "1" + }, + { + "name": "S_VOICE_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOIP_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_LOOP_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_FAST_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_NORMAL_AP01_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_CAPTURE_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOICE_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOIP_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_LOOP_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_BTSCO_CAP_DSP_C SWITCH", + "value": "0" + }, + { + "name": "agdsp_access_en", + "value": "1" + }, + { + "name": "agdsp_access_a2dp_en", + "value": "1" + }, + { + "name": "VBC_IIS_TX0_LRMOD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_TX1_WD_SEL", + "value": "1" + }, + { + "name": "DAC Gain DAC Playback Volume", + "value": "2" + }, + { + "name": "Speaker Function", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_OFFLOAD_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_PCM_P SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_SMART_AMP SWITCH", + "value": "1" + }, + { + "name": "VBC_MUX_DAC0_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_DAC1_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS2_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_IIS3_PORT_DO_SEL", + "value": "2" + }, + { + "name": "SmartAmp Boost", + "value": "0" + }, + { + "name": "DAC LRCLK Select", + "value": "0" + }, + { + "name": "AO Gain AO Playback Volume", + "value": "4" + }, + { + "name": "HPL Gain HPL Playback Volume", + "value": "12" + }, + { + "name": "HPR Gain HPR Playback Volume", + "value": "12" + }, + { + "name": "EAR Gain EAR Playback Volume", + "value": "12" + }, + { + "name": "AO Mixer AOL Switch", + "value": "1" + }, + { + "name": "AO Mixer AOR Switch", + "value": "1" + }, + { + "name": "AOL EAR Sel", + "value": "1" + }, + { + "name": "DA AOR Switch", + "value": "1" + }, + { + "name": "IVSENCE_FUNC_DSP", + "value": "1" + }, + { + "name": "ag_iis0_ext_sel_v2", + "value": "1" + }, + { + "name": "ag_iis1_ext_sel_v2", + "value": "1" + }, + { + "name": "VBC ADC0 DG Set", + "value": "127 127" + }, + { + "name": "aw87xxx_profile_switch_0", + "value": "0" + } + ], + "Mic": [ + { + "name": "agdsp_access_en", + "value": "1" + }, + { + "name": "agdsp_access_a2dp_en", + "value": "1" + }, + { + "name": "VBC_IIS_RX2_WD_SEL", + "value": "1" + }, + { + "name": "ag_iis0_ext_sel_v2", + "value": "1" + }, + { + "name": "ag_iis1_ext_sel_v2", + "value": "1" + }, + { + "name": "VBC_IIS_INF_SYS_SEL", + "value": "1" + }, + { + "name": "ADC LRCLK Select", + "value": "1" + }, + { + "name": "ADC1 LRCLK Select", + "value": "1" + }, + { + "name": "Speaker Function", + "value": "1" + }, + { + "name": "Mic Function", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_CAPTURE_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_OFFLOAD_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_PCM_P SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_SMART_AMP SWITCH", + "value": "1" + }, + { + "name": "ADC_1 Mixer MIC1PGA_1 Switch", + "value": "1" + }, + { + "name": "AUD ADC0L Switch", + "value": "1" + }, + { + "name": "AUD ADC0R Switch", + "value": "1" + }, + { + "name": "ADC_1 Gain ADC_1 Capture Volume", + "value": "6" + }, + { + "name": "ADC_2 Gain ADC_2 Capture Volume", + "value": "7" + }, + { + "name": "ADC_3 Gain ADC_3 Capture Volume", + "value": "6" + }, + { + "name": "AO Gain AO Playback Volume", + "value": "4" + }, + { + "name": "AO Mixer AOL Switch", + "value": "1" + }, + { + "name": "AO Mixer AOR Switch", + "value": "1" + }, + { + "name": "AOL EAR Sel", + "value": "1" + }, + { + "name": "DA AOR Switch", + "value": "1" + }, + { + "name": "HPL Gain HPL Playback Volume", + "value": "12" + }, + { + "name": "HPR Gain HPR Playback Volume", + "value": "12" + }, + { + "name": "EAR Gain EAR Playback Volume", + "value": "12" + }, + { + "name": "ADC_3 Mixer MIC3PGA_3 Switch", + "value": "0" + }, + { + "name": "Aux Mic2 Function", + "value": "0" + } + ], + "Bluetooth": [ + { + "name": "VBC_IIS_TX0_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_TX1_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_MASTER_ENALBE", + "value": "0" + }, + { + "name": "VBC_IIS_MST_SEL_0_TYPE", + "value": "0" + }, + { + "name": "VBC_MUX_DAC0_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_DAC1_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS3_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_MST_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS2_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_IIS_RX0_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX1_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX2_WD_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC0_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC1_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC2_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC3_IIS_PORT_SEL", + "value": "3" + }, + { + "name": "VBC_SRC_BT_DAC", + "value": "16000" + }, + { + "name": "VBC_SRC_BT_ADC", + "value": "16000" + }, + { + "name": "VBC_VOLUME", + "value": "0" + }, + { + "name": "ADC_1 Gain ADC_1 Capture Volume", + "value": "7" + }, + { + "name": "ADC_2 Gain ADC_2 Capture Volume", + "value": "7" + }, + { + "name": "ADC_3 Gain ADC_3 Capture Volume", + "value": "6" + }, + { + "name": "DAC Gain DAC Playback Volume", + "value": "2" + }, + { + "name": "ag_iis2_ext_sel_v2", + "value": "0" + }, + { + "name": "VBC DAC0 DSP MDG Set", + "value": "0 0" + }, + { + "name": "VBC DAC1 DSP MDG Set", + "value": "0 0" + }, + { + "name": "VBC DAC0 AUD MDG Set", + "value": "0 0" + }, + { + "name": "VBC DAC0 AUD23 MDG Set", + "value": "0 0" + }, + { + "name": "VBC_UL_MUTE", + "value": "0" + }, + { + "name": "VBC_DL_MUTE", + "value": "0" + }, + { + "name": "VBC_IIS_TX0_LRMOD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX2_LRMOD_SEL", + "value": "0" + }, + { + "name": "DAC LRCLK Select", + "value": "0" + }, + { + "name": "ADC LRCLK Select", + "value": "1" + }, + { + "name": "ADC1 LRCLK Select", + "value": "1" + }, + { + "name": "S_VOICE_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOIP_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_LOOP_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_FAST_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_NORMAL_AP01_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_CAPTURE_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOICE_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOIP_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_LOOP_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_BTSCO_CAP_DSP_C SWITCH", + "value": "0" + }, + { + "name": "agdsp_access_en", + "value": "1" + }, + { + "name": "agdsp_access_a2dp_en", + "value": "1" + }, + { + "name": "VBC_IIS_TX0_LRMOD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_TX1_WD_SEL", + "value": "1" + }, + { + "name": "DAC Gain DAC Playback Volume", + "value": "2" + }, + { + "name": "Speaker Function", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_OFFLOAD_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_PCM_P SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_SMART_AMP SWITCH", + "value": "1" + }, + { + "name": "VBC_MUX_DAC0_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_DAC1_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS2_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_IIS3_PORT_DO_SEL", + "value": "2" + }, + { + "name": "SmartAmp Boost", + "value": "0" + }, + { + "name": "DAC LRCLK Select", + "value": "0" + }, + { + "name": "AO Gain AO Playback Volume", + "value": "4" + }, + { + "name": "HPL Gain HPL Playback Volume", + "value": "12" + }, + { + "name": "HPR Gain HPR Playback Volume", + "value": "12" + }, + { + "name": "EAR Gain EAR Playback Volume", + "value": "12" + }, + { + "name": "AO Mixer AOL Switch", + "value": "1" + }, + { + "name": "AO Mixer AOR Switch", + "value": "1" + }, + { + "name": "AOL EAR Sel", + "value": "1" + }, + { + "name": "DA AOR Switch", + "value": "1" + }, + { + "name": "IVSENCE_FUNC_DSP", + "value": "1" + }, + { + "name": "ag_iis0_ext_sel_v2", + "value": "1" + }, + { + "name": "ag_iis1_ext_sel_v2", + "value": "1" + }, + { + "name": "VBC ADC0 DG Set", + "value": "127 127" + }, + { + "name": "aw87xxx_profile_switch_0", + "value": "0" + } + ], + "Bluetooth_SCO_Headset": [ + { + "name": "agdsp_access_en", + "value": "1" + }, + { + "name": "agdsp_access_a2dp_en", + "value": "1" + }, + { + "name": "VBC_IIS_RX2_WD_SEL", + "value": "1" + }, + { + "name": "ag_iis0_ext_sel_v2", + "value": "1" + }, + { + "name": "ag_iis1_ext_sel_v2", + "value": "1" + }, + { + "name": "VBC_IIS_INF_SYS_SEL", + "value": "1" + }, + { + "name": "ADC LRCLK Select", + "value": "1" + }, + { + "name": "ADC1 LRCLK Select", + "value": "1" + }, + { + "name": "Speaker Function", + "value": "1" + }, + { + "name": "Mic Function", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_CAPTURE_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_OFFLOAD_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_PCM_P SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_SMART_AMP SWITCH", + "value": "1" + }, + { + "name": "ADC_1 Mixer MIC1PGA_1 Switch", + "value": "1" + }, + { + "name": "AUD ADC0L Switch", + "value": "1" + }, + { + "name": "AUD ADC0R Switch", + "value": "1" + }, + { + "name": "ADC_1 Gain ADC_1 Capture Volume", + "value": "6" + }, + { + "name": "ADC_2 Gain ADC_2 Capture Volume", + "value": "7" + }, + { + "name": "ADC_3 Gain ADC_3 Capture Volume", + "value": "6" + }, + { + "name": "AO Gain AO Playback Volume", + "value": "4" + }, + { + "name": "AO Mixer AOL Switch", + "value": "1" + }, + { + "name": "AO Mixer AOR Switch", + "value": "1" + }, + { + "name": "AOL EAR Sel", + "value": "1" + }, + { + "name": "DA AOR Switch", + "value": "1" + }, + { + "name": "HPL Gain HPL Playback Volume", + "value": "12" + }, + { + "name": "HPR Gain HPR Playback Volume", + "value": "12" + }, + { + "name": "EAR Gain EAR Playback Volume", + "value": "12" + }, + { + "name": "ADC_3 Mixer MIC3PGA_3 Switch", + "value": "0" + }, + { + "name": "Aux Mic2 Function", + "value": "0" + } + ] + } + ], + "low-latency-communication": [ + { + "Speaker": [ + { + "name": "agdsp_access_en", + "value": "1" + }, + { + "name": "agdsp_access_a2dp_en", + "value": "1" + }, + { + "name": "VBC_IIS_TX0_LRMOD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_TX1_WD_SEL", + "value": "1" + }, + { + "name": "DAC Gain DAC Playback Volume", + "value": "2" + }, + { + "name": "Speaker Function", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_OFFLOAD_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_PCM_P SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_SMART_AMP SWITCH", + "value": "1" + }, + { + "name": "VBC_MUX_DAC0_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_DAC1_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS2_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_IIS3_PORT_DO_SEL", + "value": "2" + }, + { + "name": "SmartAmp Boost", + "value": "0" + }, + { + "name": "DAC LRCLK Select", + "value": "0" + }, + { + "name": "AO Gain AO Playback Volume", + "value": "4" + }, + { + "name": "HPL Gain HPL Playback Volume", + "value": "12" + }, + { + "name": "HPR Gain HPR Playback Volume", + "value": "12" + }, + { + "name": "EAR Gain EAR Playback Volume", + "value": "12" + }, + { + "name": "AO Mixer AOL Switch", + "value": "1" + }, + { + "name": "AO Mixer AOR Switch", + "value": "1" + }, + { + "name": "AOL EAR Sel", + "value": "1" + }, + { + "name": "DA AOR Switch", + "value": "1" + }, + { + "name": "IVSENCE_FUNC_DSP", + "value": "1" + }, + { + "name": "ag_iis0_ext_sel_v2", + "value": "1" + }, + { + "name": "ag_iis1_ext_sel_v2", + "value": "1" + }, + { + "name": "VBC ADC0 DG Set", + "value": "127 127" + }, + { + "name": "aw87xxx_profile_switch_0", + "value": "0" + }, + { + "name": "VBC_VOLUME", + "value": "0" + } + ], + "Headphones": [ + { + "name": "agdsp_access_en", + "value": "1" + } + ], + "Mic": [ + { + "name": "agdsp_access_en", + "value": "1" + }, + { + "name": "agdsp_access_a2dp_en", + "value": "1" + }, + { + "name": "VBC_IIS_RX2_WD_SEL", + "value": "1" + }, + { + "name": "ag_iis0_ext_sel_v2", + "value": "1" + }, + { + "name": "ag_iis1_ext_sel_v2", + "value": "1" + }, + { + "name": "VBC_IIS_INF_SYS_SEL", + "value": "1" + }, + { + "name": "ADC LRCLK Select", + "value": "1" + }, + { + "name": "ADC1 LRCLK Select", + "value": "1" + }, + { + "name": "Speaker Function", + "value": "1" + }, + { + "name": "Mic Function", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_CAPTURE_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_OFFLOAD_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_PCM_P SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_SMART_AMP SWITCH", + "value": "1" + }, + { + "name": "ADC_1 Mixer MIC1PGA_1 Switch", + "value": "1" + }, + { + "name": "AUD ADC0L Switch", + "value": "1" + }, + { + "name": "AUD ADC0R Switch", + "value": "1" + }, + { + "name": "ADC_1 Gain ADC_1 Capture Volume", + "value": "6" + }, + { + "name": "ADC_2 Gain ADC_2 Capture Volume", + "value": "7" + }, + { + "name": "ADC_3 Gain ADC_3 Capture Volume", + "value": "6" + }, + { + "name": "AO Gain AO Playback Volume", + "value": "4" + }, + { + "name": "AO Mixer AOL Switch", + "value": "1" + }, + { + "name": "AO Mixer AOR Switch", + "value": "1" + }, + { + "name": "AOL EAR Sel", + "value": "1" + }, + { + "name": "DA AOR Switch", + "value": "1" + }, + { + "name": "HPL Gain HPL Playback Volume", + "value": "12" + }, + { + "name": "HPR Gain HPR Playback Volume", + "value": "12" + }, + { + "name": "EAR Gain EAR Playback Volume", + "value": "12" + } + ] + } + ], + "ringtone-playback": [ + { + "Speaker": [ + { + "name": "VBC_IIS_TX0_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_TX1_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_MASTER_ENALBE", + "value": "0" + }, + { + "name": "VBC_IIS_MST_SEL_0_TYPE", + "value": "0" + }, + { + "name": "VBC_MUX_DAC0_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_DAC1_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS3_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_MST_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS2_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_IIS_RX0_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX1_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX2_WD_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC0_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC1_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC2_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC3_IIS_PORT_SEL", + "value": "3" + }, + { + "name": "VBC_SRC_BT_DAC", + "value": "48000" + }, + { + "name": "VBC_SRC_BT_ADC", + "value": "48000" + }, + { + "name": "VBC_VOLUME", + "value": "0" + }, + { + "name": "ADC_1 Gain ADC_1 Capture Volume", + "value": "7" + }, + { + "name": "ADC_2 Gain ADC_2 Capture Volume", + "value": "7" + }, + { + "name": "ADC_3 Gain ADC_3 Capture Volume", + "value": "6" + }, + { + "name": "DAC Gain DAC Playback Volume", + "value": "2" + }, + { + "name": "ag_iis2_ext_sel_v2", + "value": "0" + }, + { + "name": "VBC DAC0 DSP MDG Set", + "value": "0 0" + }, + { + "name": "VBC DAC1 DSP MDG Set", + "value": "0 0" + }, + { + "name": "VBC DAC0 AUD MDG Set", + "value": "0 0" + }, + { + "name": "VBC DAC0 AUD23 MDG Set", + "value": "0 0" + }, + { + "name": "VBC_UL_MUTE", + "value": "0" + }, + { + "name": "VBC_DL_MUTE", + "value": "0" + }, + { + "name": "VBC_IIS_TX0_LRMOD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX2_LRMOD_SEL", + "value": "0" + }, + { + "name": "DAC LRCLK Select", + "value": "0" + }, + { + "name": "ADC LRCLK Select", + "value": "1" + }, + { + "name": "ADC1 LRCLK Select", + "value": "1" + }, + { + "name": "S_VOICE_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOIP_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_LOOP_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_FAST_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_NORMAL_AP01_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_CAPTURE_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOICE_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOIP_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_LOOP_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_BTSCO_CAP_DSP_C SWITCH", + "value": "0" + }, + { + "name": "agdsp_access_en", + "value": "1" + }, + { + "name": "agdsp_access_a2dp_en", + "value": "1" + }, + { + "name": "VBC_IIS_TX0_LRMOD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_TX1_WD_SEL", + "value": "1" + }, + { + "name": "DAC Gain DAC Playback Volume", + "value": "2" + }, + { + "name": "Speaker Function", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_OFFLOAD_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_PCM_P SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_SMART_AMP SWITCH", + "value": "1" + }, + { + "name": "VBC_MUX_DAC0_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_DAC1_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS2_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_IIS3_PORT_DO_SEL", + "value": "2" + }, + { + "name": "SmartAmp Boost", + "value": "0" + }, + { + "name": "DAC LRCLK Select", + "value": "0" + }, + { + "name": "AO Gain AO Playback Volume", + "value": "4" + }, + { + "name": "HPL Gain HPL Playback Volume", + "value": "12" + }, + { + "name": "HPR Gain HPR Playback Volume", + "value": "12" + }, + { + "name": "EAR Gain EAR Playback Volume", + "value": "12" + }, + { + "name": "AO Mixer AOL Switch", + "value": "1" + }, + { + "name": "AO Mixer AOR Switch", + "value": "1" + }, + { + "name": "AOL EAR Sel", + "value": "1" + }, + { + "name": "DA AOR Switch", + "value": "1" + }, + { + "name": "IVSENCE_FUNC_DSP", + "value": "1" + }, + { + "name": "ag_iis0_ext_sel_v2", + "value": "1" + }, + { + "name": "ag_iis1_ext_sel_v2", + "value": "1" + }, + { + "name": "VBC ADC0 DG Set", + "value": "127 127" + }, + { + "name": "aw87xxx_profile_switch_0", + "value": "0" + } + ], + "Mic": [ + { + "name": "agdsp_access_en", + "value": "1" + }, + { + "name": "agdsp_access_a2dp_en", + "value": "1" + }, + { + "name": "VBC_IIS_RX2_WD_SEL", + "value": "1" + }, + { + "name": "ag_iis0_ext_sel_v2", + "value": "1" + }, + { + "name": "ag_iis1_ext_sel_v2", + "value": "1" + }, + { + "name": "VBC_IIS_INF_SYS_SEL", + "value": "1" + }, + { + "name": "ADC LRCLK Select", + "value": "1" + }, + { + "name": "ADC1 LRCLK Select", + "value": "1" + }, + { + "name": "Speaker Function", + "value": "1" + }, + { + "name": "Mic Function", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_CAPTURE_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_OFFLOAD_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_PCM_P SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_SMART_AMP SWITCH", + "value": "1" + }, + { + "name": "ADC_1 Mixer MIC1PGA_1 Switch", + "value": "1" + }, + { + "name": "AUD ADC0L Switch", + "value": "1" + }, + { + "name": "AUD ADC0R Switch", + "value": "1" + }, + { + "name": "ADC_1 Gain ADC_1 Capture Volume", + "value": "6" + }, + { + "name": "ADC_2 Gain ADC_2 Capture Volume", + "value": "7" + }, + { + "name": "ADC_3 Gain ADC_3 Capture Volume", + "value": "6" + }, + { + "name": "AO Gain AO Playback Volume", + "value": "4" + }, + { + "name": "AO Mixer AOL Switch", + "value": "1" + }, + { + "name": "AO Mixer AOR Switch", + "value": "1" + }, + { + "name": "AOL EAR Sel", + "value": "1" + }, + { + "name": "DA AOR Switch", + "value": "1" + }, + { + "name": "HPL Gain HPL Playback Volume", + "value": "12" + }, + { + "name": "HPR Gain HPR Playback Volume", + "value": "12" + }, + { + "name": "EAR Gain EAR Playback Volume", + "value": "12" + } + ] + } + ], + "voice-call": [ + { + "Speaker": [ + { + "name": "VBC_IIS_TX0_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_TX1_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_MASTER_ENALBE", + "value": "0" + }, + { + "name": "VBC_IIS_MST_SEL_0_TYPE", + "value": "0" + }, + { + "name": "VBC_MUX_DAC0_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_DAC1_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS3_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_MST_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS2_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_IIS_RX0_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX1_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX2_WD_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC0_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC1_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC2_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC3_IIS_PORT_SEL", + "value": "3" + }, + { + "name": "VBC_SRC_BT_DAC", + "value": "48000" + }, + { + "name": "VBC_SRC_BT_ADC", + "value": "48000" + }, + { + "name": "VBC_VOLUME", + "value": "6" + }, + { + "name": "DAC Gain DAC Playback Volume", + "value": "2" + }, + { + "name": "ag_iis2_ext_sel_v2", + "value": "0" + }, + { + "name": "VBC_DL_MUTE", + "value": "0" + }, + { + "name": "VBC_IIS_TX0_LRMOD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX2_LRMOD_SEL", + "value": "0" + }, + { + "name": "DAC LRCLK Select", + "value": "0" + }, + { + "name": "ADC LRCLK Select", + "value": "1" + }, + { + "name": "ADC1 LRCLK Select", + "value": "1" + }, + { + "name": "S_VOICE_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOIP_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_LOOP_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_FAST_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_NORMAL_AP01_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_CAPTURE_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOICE_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOIP_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_LOOP_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_BTSCO_CAP_DSP_C SWITCH", + "value": "0" + }, + { + "name": "agdsp_access_en", + "value": "1" + }, + { + "name": "agdsp_access_a2dp_en", + "value": "1" + }, + { + "name": "VBC ADC3 DG Set", + "value": "24 24" + }, + { + "name": "VBC_MUX_ADC1_IIS_PORT_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_ADC3_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_IIS_RX2_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_TX0_LRMOD_SEL", + "value": "1" + }, + { + "name": "ag_iis0_ext_sel_v2", + "value": "1" + }, + { + "name": "ag_iis1_ext_sel_v2", + "value": "1" + }, + { + "name": "VBC_CUSTM_DEV_CHANGE", + "value": "3" + }, + { + "name": "VBC_SYSTEM_DEV_CHANGE", + "value": "3" + }, + { + "name": "aw87xxx_profile_switch_0", + "value": "0" + }, + { + "name": "ADC LRCLK Select", + "value": "1" + }, + { + "name": "ADC1 LRCLK Select", + "value": "1" + }, + { + "name": "DAHP OS D", + "value": "5" + }, + { + "name": "ADD0 DATA SEL", + "value": "1" + }, + { + "name": "Speaker Function", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_CAPTURE_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_OFFLOAD_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_PCM_P SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_CAP_C SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_SMART_AMP SWITCH", + "value": "1" + }, + { + "name": "ADC_1 Mixer MIC1PGA_1 Switch", + "value": "1" + }, + { + "name": "AUD ADC0L Switch", + "value": "1" + }, + { + "name": "AUD ADC0R Switch", + "value": "1" + }, + { + "name": "AO Mixer AOL Switch", + "value": "1" + }, + { + "name": "AO Mixer AOR Switch", + "value": "1" + }, + { + "name": "AOL EAR Sel", + "value": "1" + }, + { + "name": "DA AOR Switch", + "value": "1" + }, + { + "name": "HPL EAR Sel", + "value": "1" + }, + { + "name": "VBC_MUX_ADC3", + "value": "4" + }, + { + "name": "NXP Profile Select", + "value": "151584773" + }, + { + "name": "DSP VBC Profile Select", + "value": "1078657024" + }, + { + "name": "Audio Structure Profile Select", + "value": "151584773" + }, + { + "name": "VBC DAC1 DG Set", + "value": "24 24" + }, + { + "name": "VBC ST DG Set", + "value": "24 24" + }, + { + "name": "VBC ADC2 DG Set", + "value": "35 35" + } + ], + "Earpiece": [ + { + "name": "VBC_IIS_TX0_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_TX1_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_MASTER_ENALBE", + "value": "0" + }, + { + "name": "VBC_IIS_MST_SEL_0_TYPE", + "value": "0" + }, + { + "name": "VBC_MUX_DAC0_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_DAC1_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS3_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_MST_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS2_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_IIS_RX0_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX1_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX2_WD_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC0_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC1_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC2_IIS_PORT_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_ADC3_IIS_PORT_SEL", + "value": "3" + }, + { + "name": "VBC_SRC_BT_DAC", + "value": "48000" + }, + { + "name": "VBC_SRC_BT_ADC", + "value": "48000" + }, + { + "name": "VBC_VOLUME", + "value": "6" + }, + { + "name": "DAC Gain DAC Playback Volume", + "value": "2" + }, + { + "name": "ag_iis2_ext_sel_v2", + "value": "0" + }, + { + "name": "VBC_DL_MUTE", + "value": "0" + }, + { + "name": "VBC_IIS_TX0_LRMOD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_RX2_LRMOD_SEL", + "value": "0" + }, + { + "name": "DAC LRCLK Select", + "value": "0" + }, + { + "name": "ADC LRCLK Select", + "value": "1" + }, + { + "name": "ADC1 LRCLK Select", + "value": "1" + }, + { + "name": "S_VOICE_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOIP_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_LOOP_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_FAST_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_NORMAL_AP01_P_BT SWITCH", + "value": "0" + }, + { + "name": "S_CAPTURE_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOICE_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_VOIP_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_LOOP_C_BT SWITCH", + "value": "0" + }, + { + "name": "S_BTSCO_CAP_DSP_C SWITCH", + "value": "0" + }, + { + "name": "agdsp_access_en", + "value": "1" + }, + { + "name": "agdsp_access_a2dp_en", + "value": "1" + }, + { + "name": "VBC ADC3 DG Set", + "value": "24 24" + }, + { + "name": "VBC_MUX_ADC1_IIS_PORT_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_ADC3_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_IIS_RX2_WD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_TX0_LRMOD_SEL", + "value": "1" + }, + { + "name": "ag_iis0_ext_sel_v2", + "value": "1" + }, + { + "name": "ag_iis1_ext_sel_v2", + "value": "1" + }, + { + "name": "VBC_CUSTM_DEV_CHANGE", + "value": "3" + }, + { + "name": "VBC_SYSTEM_DEV_CHANGE", + "value": "3" + }, + { + "name": "aw87xxx_profile_switch_0", + "value": "0" + }, + { + "name": "DAC LRCLK Select", + "value": "0" + }, + { + "name": "ADC LRCLK Select", + "value": "1" + }, + { + "name": "ADC1 LRCLK Select", + "value": "1" + }, + { + "name": "DAHP OS D", + "value": "5" + }, + { + "name": "ADD0 DATA SEL", + "value": "1" + }, + { + "name": "Earpiece Function", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_CAPTURE_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_OFFLOAD_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_C_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_PCM_P SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_CAP_C SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_SMART_AMP SWITCH", + "value": "1" + }, + { + "name": "ADC_1 Mixer MIC1PGA_1 Switch", + "value": "1" + }, + { + "name": "AUD ADC0L Switch", + "value": "1" + }, + { + "name": "AUD ADC0R Switch", + "value": "1" + }, + { + "name": "AO Mixer AOL Switch", + "value": "0" + }, + { + "name": "AO Mixer AOR Switch", + "value": "0" + }, + { + "name": "AOL EAR Sel", + "value": "0" + }, + { + "name": "DA AOR Switch", + "value": "0" + }, + { + "name": "EAR_HPL Mixer DACHPL Switch", + "value": "1" + }, + { + "name": "HPL EAR Sel", + "value": "0" + }, + { + "name": "VBC_MUX_ADC3", + "value": "4" + }, + { + "name": "NXP Profile Select", + "value": "33685509" + }, + { + "name": "DSP VBC Profile Select", + "value": "33685509" + }, + { + "name": "Audio Structure Profile Select", + "value": "33685509" + }, + { + "name": "VBC DAC1 DG Set", + "value": "24 24" + }, + { + "name": "VBC ST DG Set", + "value": "24 24" + }, + { + "name": "VBC ADC2 DG Set", + "value": "35 35" + }, + { + "name": "EAR Gain EAR Playback Volume", + "value": "0" + } + ], + "Bluetooth": [ + { + "name": "agdsp_access_en", + "value": "1" + }, + { + "name": "agdsp_access_a2dp_en", + "value": "1" + }, + { + "name": "VBC_IIS_TX0_WD_SEL", + "value": "0" + }, + { + "name": "VBC_IIS_TX1_WD_SEL", + "value": "0" + }, + { + "name": "VBC_IIS_MASTER_ENALBE", + "value": "1" + }, + { + "name": "VBC_IIS_MST_SEL_0_TYPE", + "value": "1" + }, + { + "name": "VBC_MUX_DAC0_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_DAC1_IIS_PORT_SEL", + "value": "3" + }, + { + "name": "VBC_MUX_IIS3_PORT_DO_SEL", + "value": "1" + }, + { + "name": "VBC_MUX_MST_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS2_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_IIS0_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_IIS_RX0_WD_SEL", + "value": "0" + }, + { + "name": "VBC_IIS_RX1_WD_SEL", + "value": "0" + }, + { + "name": "VBC_IIS_RX2_WD_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_ADC0_IIS_PORT_SEL", + "value": "3" + }, + { + "name": "VBC_MUX_ADC1_IIS_PORT_SEL", + "value": "3" + }, + { + "name": "VBC_MUX_ADC2_IIS_PORT_SEL", + "value": "3" + }, + { + "name": "VBC_MUX_ADC3_IIS_PORT_SEL", + "value": "3" + }, + { + "name": "VBC_SRC_BT_DAC", + "value": "8000" + }, + { + "name": "VBC_SRC_BT_ADC", + "value": "8000" + }, + { + "name": "VBC_VOLUME", + "value": "8" + }, + { + "name": "DAC Gain DAC Playback Volume", + "value": "0" + }, + { + "name": "ag_iis1_ext_sel_v2", + "value": "1" + }, + { + "name": "ag_iis2_ext_sel_v2", + "value": "0" + }, + { + "name": "SYS_IIS0", + "value": "3" + }, + { + "name": "VBC_DL_MUTE", + "value": "0" + }, + { + "name": "VBC_IIS_TX0_LRMOD_SEL", + "value": "0" + }, + { + "name": "VBC_IIS_RX2_LRMOD_SEL", + "value": "0" + }, + { + "name": "DAC LRCLK Select", + "value": "0" + }, + { + "name": "ADC LRCLK Select", + "value": "0" + }, + { + "name": "ADC1 LRCLK Select", + "value": "0" + }, + { + "name": "S_VOICE_P_BT SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_P_BT SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_P_BT SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_BT SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_P_BT SWITCH", + "value": "1" + }, + { + "name": "S_CAPTURE_BT SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_PCM_P SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_SMART_AMP SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_C_BT SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_C_BT SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_C_BT SWITCH", + "value": "1" + }, + { + "name": "S_BTSCO_CAP_DSP_C SWITCH", + "value": "1" + } + ], + "Mic": [ + { + "name": "ADC_3 Mixer MIC3PGA_3 Switch", + "value": "1" + }, + { + "name": "Aux Mic2 Function", + "value": "1" + } + ], + "Bluetooth_SCO_Headset": [ + { + "name": "agdsp_access_en", + "value": "1" + } + ] + } + ], + "low-latency-noirq-playback": [ + { + "Speaker": [ + { + "name": "agdsp_access_en", + "value": "1" + }, + { + "name": "agdsp_access_a2dp_en", + "value": "1" + }, + { + "name": "VBC_IIS_TX0_LRMOD_SEL", + "value": "1" + }, + { + "name": "VBC_IIS_TX1_WD_SEL", + "value": "1" + }, + { + "name": "DAC Gain DAC Playback Volume", + "value": "2" + }, + { + "name": "Speaker Function", + "value": "1" + }, + { + "name": "S_NORMAL_AP01_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_NORMAL_AP23_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_OFFLOAD_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOIP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_LOOP_P_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_FM_DSP_CODEC SWITCH", + "value": "1" + }, + { + "name": "S_VOICE_PCM_P SWITCH", + "value": "1" + }, + { + "name": "S_FAST_P_SMART_AMP SWITCH", + "value": "1" + }, + { + "name": "VBC_MUX_DAC0_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_DAC1_IIS_PORT_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS0_PORT_DO_SEL", + "value": "0" + }, + { + "name": "VBC_MUX_IIS2_PORT_DO_SEL", + "value": "2" + }, + { + "name": "VBC_MUX_IIS3_PORT_DO_SEL", + "value": "2" + }, + { + "name": "SmartAmp Boost", + "value": "0" + }, + { + "name": "DAC LRCLK Select", + "value": "0" + }, + { + "name": "AO Gain AO Playback Volume", + "value": "4" + }, + { + "name": "HPL Gain HPL Playback Volume", + "value": "12" + }, + { + "name": "HPR Gain HPR Playback Volume", + "value": "12" + }, + { + "name": "EAR Gain EAR Playback Volume", + "value": "12" + }, + { + "name": "AO Mixer AOL Switch", + "value": "1" + }, + { + "name": "AO Mixer AOR Switch", + "value": "1" + }, + { + "name": "AOL EAR Sel", + "value": "1" + }, + { + "name": "DA AOR Switch", + "value": "1" + }, + { + "name": "IVSENCE_FUNC_DSP", + "value": "1" + }, + { + "name": "ag_iis0_ext_sel_v2", + "value": "1" + }, + { + "name": "ag_iis1_ext_sel_v2", + "value": "1" + }, + { + "name": "VBC ADC0 DG Set", + "value": "127 127" + }, + { + "name": "aw87xxx_profile_switch_0", + "value": "0" + }, + { + "name": "VBC_VOLUME", + "value": "0" + } + ], + "Headphones": [ + { + "name": "agdsp_access_en", + "value": "1" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/oriole/hals/audio/audio_adapter.json b/oriole/hals/audio/audio_adapter.json new file mode 100644 index 0000000000000000000000000000000000000000..52858716b9f1c83b55b293649df9e4d92d934e7d --- /dev/null +++ b/oriole/hals/audio/audio_adapter.json @@ -0,0 +1,73 @@ +{ + "adapterNum": 5, + "adapters": [{ + "name": "primary", + "portnum": 2, + "port": [{ + "dir": "PORT_OUT", + "id": 0, + "name": "AOP" + }, + { + "dir": "PORT_IN", + "id": 0, + "name": "AIP" + }] + }, + { + "name": "primary1", + "portnum": 3, + "port": [{ + "dir": "PORT_OUT", + "id": 0, + "name": "AOP" + }, + { + "dir": "PORT_IN", + "id": 0, + "name": "AIP" + }, + { + "dir": "PORT_OUT_IN", + "id": 0, + "name": "AIOP" + }] + }, + { + "name": "primary_ext", + "portnum": 1, + "port": [{ + "dir": "PORT_OUT", + "id": 11, + "name": "AOP" + }] + }, + { + "name": "usb", + "portnum": 3, + "port": [{ + "dir": "PORT_OUT", + "id": 21, + "name": "AOP" + }, + { + "dir": "PORT_IN", + "id": 21, + "name": "AIP" + }, + { + "dir": "PORT_OUT_IN", + "id": 21, + "name": "AIOP" + }] + }, + { + "name": "a2dp", + "portnum": 1, + "port": [{ + "dir": "PORT_OUT", + "id": 31, + "name": "AOP" + }] + }] +} diff --git a/oriole/hals/audio/audio_effect.json b/oriole/hals/audio/audio_effect.json new file mode 100644 index 0000000000000000000000000000000000000000..c176049c75f94b50ded205cbf4f3c23ddd2724e8 --- /dev/null +++ b/oriole/hals/audio/audio_effect.json @@ -0,0 +1,15 @@ +{ + "effects":[ + { + "name":"mock_effect", + "library":"libmock_effect_lib", + "effectId":"aaaabbbb-8888-9999-6666-aabbccdd9966ff" + } + ], + "libraries":[ + { + "name":"libmock_effect_lib", + "path":"libmock_effect_lib" + } + ] +} \ No newline at end of file diff --git a/oriole/hals/audio/audio_paths.json b/oriole/hals/audio/audio_paths.json new file mode 100644 index 0000000000000000000000000000000000000000..c9ce43d04a8a526c1d5ff48f6473e49a82363361 --- /dev/null +++ b/oriole/hals/audio/audio_paths.json @@ -0,0 +1,94 @@ +{ + "hdf_audio_codec_primary_dev0": [ + { + "deep-buffer-playback Speaker": [ + { + "name": "DACL Left Speaker Mixer", + "value": 1 + }, + { + "name": "DACR Left Speaker Mixer", + "value": 1 + } + ], + "headphones": [ + { + "name": "Speaker1 Switch", + "value": 1 + }, + { + "name": "Headphone1 Switch", + "value": 0 + }, + { + "name": "Headphone2 Switch", + "value": 0 + } + ], + "Speaker": [ + { + "name": "Speaker1 Switch", + "value": 0 + }, + { + "name": "Headphone1 Switch", + "value": 1 + }, + { + "name": "Headphone2 Switch", + "value": 1 + } + ], + "deep-buffer-playback headphones": [ + { + "name": "DACL Left Speaker Mixer", + "value": 1 + }, + { + "name": "DACR Left Speaker Mixer", + "value": 1 + } + ], + "deep-buffer-playback mic": [ + { + "name": "DACL Left Speaker Mixer", + "value": 1 + }, + { + "name": "DACR Left Speaker Mixer", + "value": 1 + } + ], + "deep-buffer-playback micHs": [ + { + "name": "DACL Left Speaker Mixer", + "value": 1 + }, + { + "name": "DACR Left Speaker Mixer", + "value": 1 + } + ], + "mic": [ + { + "name": "LPGA MIC Switch", + "value": 0 + }, + { + "name": "RPGA MIC Switch", + "value": 1 + } + ], + "micHs": [ + { + "name": "LPGA MIC Switch", + "value": 1 + }, + { + "name": "RPGA MIC Switch", + "value": 0 + } + ] + } + ] +} diff --git a/oriole/hals/audio/config/arm/audio_policy_config.xml b/oriole/hals/audio/config/arm/audio_policy_config.xml new file mode 100644 index 0000000000000000000000000000000000000000..6f3eb8d50ea3e4fce0654b44ed26cb8f2f323ece --- /dev/null +++ b/oriole/hals/audio/config/arm/audio_policy_config.xml @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + false + 50 + + + + + + + + + + + + + + + diff --git a/oriole/hals/audio/config/arm64/audio_policy_config.xml b/oriole/hals/audio/config/arm64/audio_policy_config.xml new file mode 100644 index 0000000000000000000000000000000000000000..4f44737edf0565e69fc80c6cbdba5759fe8454da --- /dev/null +++ b/oriole/hals/audio/config/arm64/audio_policy_config.xml @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + true + 90 + + + + + + + + + + + + + + + diff --git a/oriole/hals/audio/param/audio_structure b/oriole/hals/audio/param/audio_structure new file mode 100644 index 0000000000000000000000000000000000000000..307ee40973fbe576a8a6ced5ac8ca0b666030b68 Binary files /dev/null and b/oriole/hals/audio/param/audio_structure differ diff --git a/oriole/hals/audio/param/cvs b/oriole/hals/audio/param/cvs new file mode 100644 index 0000000000000000000000000000000000000000..7f6744e153795162bf49ff18381a1419cd86dd8a Binary files /dev/null and b/oriole/hals/audio/param/cvs differ diff --git a/oriole/hals/audio/param/dsp_smartamp b/oriole/hals/audio/param/dsp_smartamp new file mode 100644 index 0000000000000000000000000000000000000000..a47b78513ca4a118827631fe9764522daad8b823 Binary files /dev/null and b/oriole/hals/audio/param/dsp_smartamp differ diff --git a/oriole/hals/audio/param/dsp_vbc b/oriole/hals/audio/param/dsp_vbc new file mode 100644 index 0000000000000000000000000000000000000000..403cd114cc3747b20b18a6a7902542a3bf6e7738 Binary files /dev/null and b/oriole/hals/audio/param/dsp_vbc differ diff --git a/oriole/hals/audio/product.gni b/oriole/hals/audio/product.gni new file mode 100644 index 0000000000000000000000000000000000000000..3f9ab6f9fc757a49b025ec4bbfec7bdd1bce70df --- /dev/null +++ b/oriole/hals/audio/product.gni @@ -0,0 +1,21 @@ +# Copyright (C) 2021 HiHope Open Source Organization . +# 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. + +enable_audio_alsa_mode = true +drivers_peripheral_audio_feature_hdf_proxy_stub = true +drivers_peripheral_audio_feature_hal_notsupport_pathselect = false +enable_audio_analog_headset = true +drivers_peripheral_audio_feature_policy_config = true +drivers_peripheral_audio_feature_alsa_lib = true +drivers_peripheral_audio_feature_effect = true + diff --git a/oriole/hals/wlan/product.gni b/oriole/hals/wlan/product.gni new file mode 100644 index 0000000000000000000000000000000000000000..c67b88ab9a654d429ab531f72c7a5ba8b0ab00a7 --- /dev/null +++ b/oriole/hals/wlan/product.gni @@ -0,0 +1,15 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# 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. + +enable_HDF_NL80211 = true +enable_HDF_UT = false diff --git a/oriole/hdf_config/khdf/Makefile b/oriole/hdf_config/khdf/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..1875b17945b0c8bc08bc6f153882d89ad9c83d4b --- /dev/null +++ b/oriole/hdf_config/khdf/Makefile @@ -0,0 +1,67 @@ +# +# Copyright (c) 2020-2021 Huawei Device Co., Ltd. +# +# This software is licensed under the terms of the GNU General Public +# License version 2, as published by the Free Software Foundation, and +# may be copied, distributed, and modified under those terms. +# +# 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. +# +# + +ifeq ($(LOCAL_HCS_ROOT),) + LOCAL_HCS_ROOT := $(PRODUCT_PATH) +endif +CURRENT_DIR := $(abspath $(dir $(realpath $(lastword $(MAKEFILE_LIST))))) +SOURCE_ROOT := $(abspath $(CURRENT_DIR)/../../../../../) + +HC_GEN_DIR := $(abspath $(SOURCE_ROOT)/drivers/hdf_core/framework/tools/hc-gen) +ifneq ($(OUT_DIR),) +HC_GEN := $(OUT_DIR)/kernel/OBJ/${KERNEL_VERSION}/drivers/hdf/khdf/hc_gen_build/hc-gen +else +HC_GEN := $(HC_GEN_DIR)/build/hc-gen +endif +LOCAL_HCS_ROOT := $(CURRENT_DIR) + +HCS_DIR := $(LOCAL_HCS_ROOT) + +ifneq ($(TARGET_BOARD_PLATFORM),) + HCS_DIR := $(LOCAL_HCS_ROOT)/$(TARGET_BOARD_PLATFORM) +else + ifneq ($(CONFIG_ARCH_HI3516DV300),) + HCS_DIR := $(LOCAL_HCS_ROOT) + endif + ifneq ($(CONFIG_ARCH_HI3518EV300),) + HCS_DIR := $(LOCAL_HCS_ROOT) + endif +endif +$(info HCS_DIR = $(HCS_DIR)) +HCB_FLAGS := -b -i -a + +HCS_OBJ := hdf_hcs_hex.o +HCS_OBJ_SRC := $(subst .o,.c,$(notdir $(HCS_OBJ))) + +CONFIG_GEN_HEX_SRC := $(addprefix $(LOCAL_HCS_ROOT)/, $(HCS_OBJ_SRC)) +CONFIG_HCS_SRC := $(subst _hcs_hex.o,.hcs,$(addprefix $(HCS_DIR)/, $(HCS_OBJ))) + +$(obj)/$(HCS_OBJ): $(CONFIG_GEN_HEX_SRC) + $(Q)$(CC) $(c_flags) -c -o $@ $< + $(Q)rm -f $< + +$(CONFIG_GEN_HEX_SRC): $(LOCAL_HCS_ROOT)/%_hcs_hex.c: $(HCS_DIR)/%.hcs | $(HC_GEN) + $(Q)echo gen hdf built-in config + $(Q)if [ ! -d $(dir $@) ]; then mkdir -p $(dir $@); fi + $(Q)$(HC_GEN) $(HCB_FLAGS) -o $(subst _hex.c,,$(@)) $< + +$(CONFIG_GEN_SRCS): $(CONFIG_OUT_DIR)%.c: $(HCS_DIR)/%.hcs | $(HC_GEN) + $(Q)echo gen hdf driver config + $(Q)if [ ! -d $(dir $@) ]; then mkdir -p $(dir $@); fi + $(Q)$(HC_GEN) -t -o $@ $< + +$(HC_GEN): + $(HIDE)make -C $(HC_GEN_DIR) BUILD_DIR=$(dir $@) + +obj-$(CONFIG_DRIVERS_HDF) += $(HCS_OBJ) diff --git a/oriole/hdf_config/khdf/audio/analog_headset_config.hcs b/oriole/hdf_config/khdf/audio/analog_headset_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..6de3baf7c5d075dc085443bd8adef180fbc66f4d --- /dev/null +++ b/oriole/hdf_config/khdf/audio/analog_headset_config.hcs @@ -0,0 +1,26 @@ +root { + platform { + template headset_info { + match_attr = ""; + serviceName = ""; + } + headset :: headset_info { + match_attr = "analog_headset_attr"; + serviceName = "analog_headset_service"; + vendor = 0x0001; + product = 0x0001; + version = 0x0100; + dev_name = "rk809_analog_headset"; + headset_gpio = 115; + headset_gpio_flag = 0; + mic_switch_gpio = 0; + hp_mic_io_value = 0; + main_mic_io_value = 1; + headset_wakeup = 1; + hook_gpio = 0; + adc_controller_no = 0; + adc_channel = 0; + hook_down_type = 0; + } + } +} \ No newline at end of file diff --git a/oriole/hdf_config/khdf/audio/audio_config.hcs b/oriole/hdf_config/khdf/audio/audio_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..ac1d367f37eb158df6e0a3302d510c4095e21f81 --- /dev/null +++ b/oriole/hdf_config/khdf/audio/audio_config.hcs @@ -0,0 +1,34 @@ +root { + platform { + template card_controller { + match_attr = ""; + serviceName = ""; + codecName = ""; + platformName = ""; + cpuDaiName = ""; + codecDaiName = ""; + dspName = ""; + dspDaiName = ""; + } + controller_0x120c1000 :: card_controller { + match_attr = "hdf_audio_driver_0"; + serviceName = "hdf_audio_codec_primary_dev0"; + codecName = "codec_service_0"; + platformName = "dma_service_0"; + cpuDaiName = "dai_service"; + codecDaiName = "codec_dai"; + dspName = "dsp_service_0"; + dspDaiName = "dsp_dai"; + } + controller_0x120c1001 :: card_controller { + match_attr = "hdf_audio_driver_1"; + serviceName = "hdf_audio_codec_primary_dev11"; + codecName = "codec_service_1"; + platformName = "dma_service_0"; + cpuDaiName = "dai_service"; + codecDaiName = "rk817_dai"; + dspName = "dsp_service_0"; + dspDaiName = "dsp_dai"; + } + } +} diff --git a/oriole/hdf_config/khdf/audio/codec_config.hcs b/oriole/hdf_config/khdf/audio/codec_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..98ca542ba7ac8363aaf9f22e7303c1524dba7227 --- /dev/null +++ b/oriole/hdf_config/khdf/audio/codec_config.hcs @@ -0,0 +1,140 @@ +root { + platform { + template codec_controller { + match_attr = ""; + serviceName = ""; + codecDaiName = ""; + } + controller_0x120c1030 :: codec_controller { + match_attr = "hdf_codec_driver_0"; + serviceName = "codec_service_0"; + codecDaiName = "codec_dai"; + regConfig { + /* reg: register address + rreg: register address + shift: shift bits + rshift: rshift bits + min: min value + max: max value + mask: mask of value + invert: enum InvertVal 0-uninvert 1-invert + value: value + */ + + /* reg, value */ + initSeqConfig = [ + 0x13, 0xf4, + 0x15, 0xff, + 0x17, 0x40, + 0x18, 0xc8, + 0x1e, 0x00, + 0x27, 0x3f, + 0x29, 0x99, + 0x2f, 0x03, + 0x30, 0x06, + 0x35, 0x02, + 0x38, 0x10, + 0x3c, 0x0F, + 0x3d, 0x80, + 0x3e, 0x0f, + 0x3f, 0x11, + 0x40, 0xa5, + 0x41, 0x77, + 0x42, 0x04, + 0x43, 0x58, + 0x44, 0x2d, + 0x45, 0x0c, + 0x46, 0xa5, + 0x47, 0x00, + 0x48, 0x00, + 0x4b, 0x0f, + 0x4c, 0x20, + 0x4e, 0x0f, + 0x4f, 0x00, + ]; + + controlsConfig = [ + + /*array index, iface, mixer/mux, enable,*/ + 0, 2, 0, 1, + 1, 2, 0, 1, + 2, 2, 0, 1, + 3, 2, 0, 1, + 4, 2, 0, 1, + 5, 2, 0, 1, + 8, 2, 0, 1, + 9, 2, 0, 1, + ]; + + /* reg, rreg, shift, rshift, min, max, mask, invert, value */ + ctrlParamsSeqConfig = [ + 0x31, 0x32, 0, 0, 0x00, 0xFF, 0xFF, 1, 0x00, // DACL/R Playback Volume + 0x1a, 0x1b, 0, 0, 0x00, 0xFF, 0xFF, 1, 0x00, // ADCL/R Capture Volume + 0x38, 0x38, 0, 0, 0x0, 0x1, 0x1, 0, 0x0, // DAC Playback Mute + 0x27, 0x27, 6, 6, 0x0, 0x1, 0x1, 0, 0x0, // ADCL/R Capture Mute + 0x29, 0x29, 4, 4, 0x0, 0xF, 0xF, 0, 0x9, // Mic Left Gain + 0x29, 0x29, 0, 0, 0x0, 0xF, 0xF, 0, 0x9, // Mic Right Gain + 0x4a, 0x4a, 2, 2, 0x0, 0x2, 0x3, 0, 0x0, // Render Channel Mode + 0x4d, 0x4d, 2, 2, 0x0, 0x2, 0x3, 0, 0x0, // Captrue Channel Mode + ]; + + /* reg, rreg, shift, rshift, min, max, mask, invert, value */ + daiParamsSeqConfig = [ + 0x45, 0x45, 0, 0, 0x0, 0xFF, 0xFF, 0, 0x0C, // PLL_PREDIV_BIT + 0x35, 0x35, 0, 0, 0x0, 0x7, 0x7, 0, 0x2, // DAC_Sample_rate + 0x1e, 0x1e, 0, 0, 0x0, 0x7, 0x7, 0, 0x2, // ADC_Sample_rate + 0x4e, 0x4e, 0, 0, 0x0, 0x17, 0x1F, 0, 0x0F, // TX_datawidth + 0x4b, 0x4b, 0, 0, 0x0, 0x17, 0x1F, 0, 0x0F, // RX_datawidth + 0x15, 0x15, 0x0, 0x0, 0x0, 0xf, 0xf, 0, 0x0, // rx clk enable + 0x15, 0x15, 0x4, 0x4, 0x0, 0xf, 0xf, 0, 0x0, // tx clk enable + ]; + + ctrlSapmParamsSeqConfig = [ + 0x27, 0x27, 5, 5, 0x00, 0x1, 0x1, 1, 0x00, //LPGA MIC -- connect MIC1 + 0x27, 0x27, 4, 4, 0x00, 0x1, 0x1, 1, 0x00, //RPGA MIC -- connect MIC2 + 0x2F, 0x2F, 2, 2, 0x00, 0x1, 0x1, 1, 0x00, //Speaker1 Switch -- connect speaker + 0x2F, 0x2F, 1, 1, 0x00, 0x1, 0x1, 1, 0x00, //Headphone1 Switch -- connect hpl + 0x2F, 0x2F, 0, 0, 0x00, 0x1, 0x1, 1, 0x00, //Headphone2 Switch -- connect hpr + ]; + /* + 电源管理组件配置 + reg is 0xFFFF: component has no sapm register bit + sapmType, compNameIndex, reg, mask, shift, invert, kcontrolNews, kcontrolsNum + */ + sapmComponent = [ + 10, 0, 0x18, 0x1, 7, 1, 0, 0, //ADCL + 10, 1, 0x18, 0x1, 6, 1, 0, 0, //ADCR + 11, 32, 0xFFFF, 0xFFFF, 0, 0, 0, 0, //DAC1 + 11, 33, 0xFFFF, 0xFFFF, 0, 0, 0, 0, //DAC2 + 11, 34, 0xFFFF, 0xFFFF, 0, 0, 0, 0, //DAC3 + 6, 52, 0xFFFF, 0xFFFF, 0, 0, 3, 1, //SPKL PGA + 6, 54, 0xFFFF, 0xFFFF, 0, 0, 4, 1, //HPL PGA + 6, 55, 0xFFFF, 0xFFFF, 0, 0, 5, 1, //HPR PGA + 15, 6, 0xFFFF, 0xFFFF, 0, 0, 0, 0, //SPK + 14, 10, 0xFFFF, 0xFFFF, 0, 0, 0, 0, //HPL + 14, 11, 0xFFFF, 0xFFFF, 0, 0, 0, 0, //HPR + 6, 4, 0xFFFF, 0xFFFF, 6, 0, 1, 1, //LPGA + 6, 5, 0xFFFF, 0xFFFF, 6, 0, 2, 1, //RPGA + 13, 40, 0xFFFF, 0xFFFF, 6, 0, 0, 0, //MIC1 + 13, 41, 0x4d, 0x1, 1, 0, 0, 0 //MIC2 + ]; + + /*array index, iface, mixer/mux, enable*/ + sapmConfig = [ + 0, 2, 0, 1, + 1, 2, 0, 1, + 24, 2, 0, 1, + 28, 2, 0, 1, + 29, 2, 0, 1 + ]; + + } + } + controller_0x120c1031 :: codec_controller { + match_attr = "hdf_codec_driver_1"; + serviceName = "codec_service_1"; + codecDaiName = "rk817_dai"; + + } + } +} diff --git a/oriole/hdf_config/khdf/audio/dai_config.hcs b/oriole/hdf_config/khdf/audio/dai_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..4af59b63786360f6d693d68f6a266057eb7cea23 --- /dev/null +++ b/oriole/hdf_config/khdf/audio/dai_config.hcs @@ -0,0 +1,65 @@ +root { + platform { + template dai_controller { + match_attr = ""; + serviceName = ""; + } + controller_0x120c1020 :: dai_controller { + match_attr = "hdf_dai_driver"; + serviceName = "dai_service"; + + idInfo { + chipName = "uis7885`"; + chipIdRegister = 0xfe410000; + chipIdSize = 0x1000; + } + + regConfig { + + /* reg: register address + rreg: register address + shift: shift bits + rshift: rshift bits + min: min value + max: max value + mask: mask of value + invert: enum InvertVal 0-uninvert 1-invert + value: value + + reg, rreg, shift, rshift, min, max, mask, invert value + */ + daiStartupSeqConfig = [ + 0x00, 0x00, 0, 0, 0, 0xFFFFFFFF, 0xFFFFFFFF, 0, 0x7200000f, //Transmit Operation Init + 0x04, 0x04, 0, 0, 0, 0xFFFFFFFF, 0xFFFFFFFF, 0, 0x01c8000f, //Receive Operation Init + 0x08, 0x08, 0, 0, 0, 0xFFFFFFFF, 0xFFFFFFFF, 0, 0x00001f1f, //Clock Generation Init + 0x10, 0x10, 0, 0, 0, 0xFFFFFFFF, 0xFFFFFFFF, 0, 0x001f0000, //DMA Control Init + 0x14, 0x14, 0, 0, 0, 0xFFFFFFFF, 0xFFFFFFFF, 0, 0x01f00000, //Interrupt Control Init + 0x1C, 0x1C, 0, 0, 0, 0x3, 0x3, 0, 0, //XFER Init + 0x30, 0x30, 0, 0, 0, 0xFFFFFFFF, 0xFFFFFFFF, 0, 0x00003eff, //TDM Transmit Init + 0x34, 0x34, 0, 0, 0, 0xFFFFFFFF, 0xFFFFFFFF, 0, 0x00003eff, //TDM Receive Init + 0x38, 0x38, 0, 0, 0, 0xFFFFFFFF, 0xFFFFFFFF, 0, 0x00000707 //Clock Divider Init + ]; + + daiParamsSeqConfig = [ + 0x08, 0x08, 8, 8, 0x1F, 0xFF, 0xFF, 0, 0x0, // I2S_CKR_RSD + 0x08, 0x08, 0, 0, 0x1F, 0xFF, 0xFF, 0, 0x0, // I2S_CKR_TSD + 0x38, 0x38, 8, 8, 0x00, 0xFF, 0xFF, 0, 0x0, // I2S_CLKDIV_RX_MDIV + 0x38, 0x38, 0, 0, 0x00, 0xFF, 0xFF, 0, 0x0, // I2S_CLKDIV_TX_MDIV + 0x08, 0x08, 27, 27, 0x0, 0x1, 0x1, 0, 0x0, // I2S_CKR_MSS + 0x08, 0x08, 26, 26, 0x0, 0x1, 0x1, 0, 0x0, // I2S_CKR_CKP + 0x08, 0x08, 25, 25, 0x0, 0x1, 0x1, 0, 0x0, // I2S_CKR_RLP + 0x08, 0x08, 24, 24, 0x0, 0x1, 0x1, 0, 0x0, // I2S_CKR_TLP + ]; + + daiTriggerSeqConfig = [ + 0x10, 0x10, 24, 24, 0x0, 0x1, 0x1, 0, 0x1, // I2S_DMACR_RDE + 0x10, 0x10, 8, 8, 0x0, 0x1, 0x1, 0, 0x1, // I2S_DMACR_TDE + 0x14, 0x14, 17, 17, 0x0, 0x1, 0x1, 0, 0x0, // I2S_INTCR_RXOIE + 0x14, 0x14, 16, 16, 0x0, 0x1, 0x1, 0, 0x0, // I2S_INTCR_RXFIE + 0x14, 0x14, 1, 1, 0x0, 0x1, 0x1, 0, 0x0, // I2S_INTCR_TXUIE + 0x14, 0x14, 0, 0, 0x0, 0x1, 0x1, 0, 0x0 // I2S_INTCR_TXEIE + ]; + } + } + } +} diff --git a/oriole/hdf_config/khdf/audio/dma_config.hcs b/oriole/hdf_config/khdf/audio/dma_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..3df7d51b9e79b86c59cdee637b4d80b561bf5fa8 --- /dev/null +++ b/oriole/hdf_config/khdf/audio/dma_config.hcs @@ -0,0 +1,12 @@ +root { + platform { + template dma_controller { + match_attr = ""; + serviceName = ""; + } + controller_0x120c1010 :: dma_controller { + match_attr = "hdf_dma_driver"; + serviceName = "dma_service_0"; + } + } +} diff --git a/oriole/hdf_config/khdf/audio/dsp_config.hcs b/oriole/hdf_config/khdf/audio/dsp_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..b967e3e4388e69195611ee2f874c7a25307e00c3 --- /dev/null +++ b/oriole/hdf_config/khdf/audio/dsp_config.hcs @@ -0,0 +1,19 @@ +root { + platform { + template dsp_controller { + match_attr = ""; + serviceName = ""; + dspDaiName = ""; + } + controller_0x120c1040 :: dsp_controller { + match_attr = "hdf_dsp_driver"; + serviceName = "dsp_service_0"; + dspDaiName = "dsp_dai"; + } + controller_0x120c1041 :: dsp_controller { + match_attr = "hdf_dsp_driver"; + serviceName = "dsp_service_0"; + dspDaiName = "dsp_dai"; + } + } +} \ No newline at end of file diff --git a/oriole/hdf_config/khdf/device_info/device_info.hcs b/oriole/hdf_config/khdf/device_info/device_info.hcs new file mode 100644 index 0000000000000000000000000000000000000000..06315f6483778ae3184a9faad89b6de42eb63b98 --- /dev/null +++ b/oriole/hdf_config/khdf/device_info/device_info.hcs @@ -0,0 +1,657 @@ + root { + device_info { + match_attr = "hdf_manager"; + template host { + hostName = ""; + priority = 100; + template device { + template deviceNode { + policy = 0; + priority = 100; + preload = 0; + permission = 0664; + moduleName = ""; + serviceName = ""; + deviceMatchAttr = ""; + } + } + } + base :: host { + hostName = "base_host"; + priority = 50; + device_support :: device { + device0 :: deviceNode { + policy = 2; + priority = 10; + permission = 0644; + moduleName = "HDF_KEVENT"; + serviceName = "hdf_kevent"; + } + } + } + platform :: host { + hostName = "platform_host"; + priority = 50; + device_gpio :: device { + device0 :: deviceNode { + policy = 0; + priority = 10; + permission = 0644; + moduleName = "linux_gpio_adapter"; + deviceMatchAttr = "linux_gpio_adapter"; + } + } + device_watchdog :: device { + device0 :: deviceNode { + policy = 1; + priority = 20; + permission = 0644; + moduleName = "HDF_PLATFORM_WATCHDOG"; + serviceName = "HDF_PLATFORM_WATCHDOG_0"; + deviceMatchAttr = "rockchip_uis7885_watchdog_0"; + } + } + device_rtc :: device { + device0 :: deviceNode { + policy = 1; + priority = 30; + permission = 0644; + moduleName = "HDF_PLATFORM_RTC"; + serviceName = "HDF_PLATFORM_RTC"; + deviceMatchAttr = "hisilicon_hi35xx_rtc"; + } + } + + device_uart :: device { + device0 :: deviceNode { + policy = 1; + priority = 40; + permission = 0644; + moduleName = "HDF_PLATFORM_UART"; + serviceName = "HDF_PLATFORM_UART_0"; + deviceMatchAttr = "rockchip_uis7885_uart_0"; + } + device1 :: deviceNode { + policy = 2; + permission = 0644; + priority = 40; + moduleName = "HDF_PLATFORM_UART"; + serviceName = "HDF_PLATFORM_UART_1"; + deviceMatchAttr = "rockchip_uis7885_uart_1"; + } + } + device_i2c :: device { + device0 :: deviceNode { + policy = 2; + priority = 50; + permission = 0644; + moduleName = "HDF_PLATFORM_I2C_MANAGER"; + serviceName = "HDF_PLATFORM_I2C_MANAGER"; + deviceMatchAttr = "hdf_platform_i2c_manager"; + } + device1 :: deviceNode { + policy = 0; + priority = 55; + permission = 0644; + moduleName = "linux_i2c_adapter"; + deviceMatchAttr = "linux_i2c_adapter"; + } + } + device_spi :: device { + device0 :: deviceNode { + policy = 1; + priority = 60; + permission = 0644; + moduleName = "HDF_PLATFORM_SPI"; + serviceName = "HDF_PLATFORM_SPI_0"; + deviceMatchAttr = "rockchip_uis7885_spi_0"; + } + device1 :: deviceNode { + policy = 1; + priority = 60; + permission = 0644; + moduleName = "HDF_PLATFORM_SPI"; + serviceName = "HDF_PLATFORM_SPI_1"; + deviceMatchAttr = "rockchip_uis7885_spi_1"; + } + device2 :: deviceNode { + policy = 1; + priority = 60; + permission = 0644; + moduleName = "HDF_PLATFORM_SPI"; + serviceName = "HDF_PLATFORM_SPI_2"; + deviceMatchAttr = "rockchip_uis7885_spi_2"; + } + device3 :: deviceNode { + policy = 1; + priority = 60; + permission = 0644; + moduleName = "HDF_PLATFORM_SPI"; + serviceName = "HDF_PLATFORM_SPI_3"; + deviceMatchAttr = "rockchip_uis7885_spi_3"; + } + } + device_sdio :: device { + device0 :: deviceNode { + policy = 1; + priority = 70; + permission = 0644; + moduleName = "HDF_PLATFORM_SDIO"; + serviceName = "HDF_PLATFORM_MMC_2"; + deviceMatchAttr = "hisilicon_hi35xx_sdio_0"; + } + } + device_emmc :: device { + device0 :: deviceNode { + policy = 2; + priority = 20; + permission = 0644; + moduleName = "HDF_PLATFORM_EMMC"; + serviceName = "HDF_PLATFORM_MMC_0"; + deviceMatchAttr = "hisilicon_hi35xx_emmc_0"; + } + } + device_pwm :: device { + device0 :: deviceNode { + policy = 1; + priority = 80; + permission = 0644; + moduleName = "HDF_PLATFORM_PWM"; + serviceName = "HDF_PLATFORM_PWM_0"; + deviceMatchAttr = "linux_pwm_adapter_0"; + } + device1 :: deviceNode { + policy = 1; + priority = 80; + permission = 0644; + moduleName = "HDF_PLATFORM_PWM"; + serviceName = "HDF_PLATFORM_PWM_1"; + deviceMatchAttr = "linux_pwm_adapter_1"; + } + device2 :: deviceNode { + policy = 1; + priority = 80; + permission = 0644; + moduleName = "HDF_PLATFORM_PWM"; + serviceName = "HDF_PLATFORM_PWM_2"; + deviceMatchAttr = "linux_pwm_adapter_2"; + } + device3 :: deviceNode { + policy = 1; + priority = 80; + permission = 0644; + moduleName = "HDF_PLATFORM_PWM"; + serviceName = "HDF_PLATFORM_PWM_3"; + deviceMatchAttr = "linux_pwm_adapter_3"; + } + device4 :: deviceNode { + policy = 1; + priority = 80; + permission = 0644; + moduleName = "HDF_PLATFORM_PWM"; + serviceName = "HDF_PLATFORM_PWM_4"; + deviceMatchAttr = "linux_pwm_adapter_4"; + } + } + device_mipi_dsi:: device { + device0 :: deviceNode { + policy = 0; + priority = 150; + permission = 0644; + moduleName = "HDF_MIPI_TX"; + serviceName = "HDF_MIPI_TX"; + } + } + } + display :: host { + hostName = "display_host"; + device_hdf_drm_panel :: device { + device0 :: deviceNode { + policy = 0; + priority = 197; + preload = 0; + moduleName = "HDF_DRMPANEL"; + } + } + device_hdf_disp :: device { + device0 :: deviceNode { + policy = 2; + priority = 196; + permission = 0660; + moduleName = "HDF_DISP"; + serviceName = "hdf_disp"; + } + } + device_hi35xx_disp :: device { + device0 :: deviceNode { + policy = 0; + priority = 195; + moduleName = "HI351XX_DISP"; + } + } + device_lcd :: device { + device0 :: deviceNode { + policy = 0; + priority = 100; + preload = 2; + moduleName = "LITE_LCDKIT"; + deviceMatchAttr = "hdf_lcdkit_driver"; + } + device1 :: deviceNode { + policy = 0; + priority = 100; + preload = 0; + moduleName = "LCD_ICN9700"; + } + device2 :: deviceNode { + policy = 0; + priority = 100; + preload = 2; + moduleName = "LCD_ST7789"; + } + device3 :: deviceNode { + policy = 0; + priority = 100; + preload = 0; + moduleName = "LCD_ILI9881_ST_5P5"; + } + } + device_pwm_bl :: device { + device0 :: deviceNode { + policy = 0; + priority = 95; + preload = 0; + moduleName = "PWM_BL"; + deviceMatchAttr = "pwm_bl_dev"; + } + } + device_backlight :: device { + device0 :: deviceNode { + policy = 2; + priority = 90; + preload = 0; + permission = 0660; + moduleName = "HDF_BL"; + serviceName = "hdf_bl"; + } + } + } + + input :: host { + hostName = "input_host"; + priority = 100; + device_input_manager :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 0; + permission = 0660; + moduleName = "HDF_INPUT_MANAGER"; + serviceName = "hdf_input_host"; + deviceMatchAttr = ""; + } + } + device_hdf_touch :: device { + device0 :: deviceNode { + policy = 2; + priority = 120; + preload = 0; + permission = 0660; + moduleName = "HDF_TOUCH"; + serviceName = "hdf_input_event1"; + deviceMatchAttr = "touch_device1"; + } + } + + device_touch_chip :: device { + device0 :: deviceNode { + policy = 0; + priority = 130; + preload = 0; + permission = 0660; + moduleName = "HDF_TOUCH_NT36XXX"; + serviceName = "hdf_touch_nt36xxx_service"; + deviceMatchAttr = "novatek_nt36xxx_nvt"; + } + } + device_hdf_hid :: device { + device0 :: deviceNode { + policy = 2; + priority = 200; + preload = 0; + permission = 0660; + moduleName = "HDF_HID"; + } + } + device_hdf_infrared :: device { + device0 :: deviceNode { + policy = 2; + priority = 200; + preload = 2; + permission = 0660; + moduleName = "HDF_INFRARED"; + serviceName = "hdf_input_event2"; + deviceMatchAttr = "Infrared_device0"; + } + } + } + + network :: host { + hostName = "network_host"; + device_wifi :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 0; + permission = 0664; + moduleName = "HDF_WIFI"; + deviceMatchAttr = "hdf_wlan_driver"; + serviceName = "hdfwifi"; + } + } + device_wlan_chips :: device { + device0 :: deviceNode { + policy = 0; + preload = 2; + moduleName = "HDF_WLAN_CHIPS_AP6275S"; + deviceMatchAttr = "hdf_wlan_chips_ap6275s"; + serviceName = "ap6275s"; + } + } + } + sensor :: host { + hostName = "sensor_host"; + device_sensor_manager :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 0; + permission = 0664; + moduleName = "HDF_SENSOR_MGR_AP"; + serviceName = "hdf_sensor_manager_ap"; + } + } + device_sensor_accel :: device { + device0 :: deviceNode { + policy = 1; + priority = 110; + preload = 0; + permission = 0664; + moduleName = "HDF_SENSOR_ACCEL"; + serviceName = "sensor_accel"; + deviceMatchAttr = "hdf_sensor_accel_driver"; + } + } + device_sensor_mxc6655xa :: device { + device0 :: deviceNode { + policy = 1; + priority = 120; + preload = 0; + permission = 0664; + moduleName = "HDF_SENSOR_ACCEL_MXC6655XA"; + serviceName = "hdf_accel_mxc6655xa"; + deviceMatchAttr = "hdf_sensor_accel_mxc6655xa_driver"; + } + } + device_sensor_sc7a20e :: device { + device0 :: deviceNode { + policy = 1; + priority = 120; + preload = 0; + permission = 0664; + moduleName = "HDF_SENSOR_ACCEL_SC7A20E"; + serviceName = "hdf_accel_sc7a20e"; + deviceMatchAttr = "hdf_sensor_accel_sc7a20e_driver"; + } + } + device_sensor_als :: device { + device0 :: deviceNode { + policy = 1; + priority = 110; + preload = 0; + permission = 0664; + moduleName = "HDF_SENSOR_ALS"; + serviceName = "hdf_sensor_als"; + deviceMatchAttr = "hdf_sensor_als_driver"; + } + } + device_sensor_bh1745 :: device { + device0 :: deviceNode { + policy = 1; + priority = 120; + preload = 0; + permission = 0664; + moduleName = "HDF_SENSOR_ALS_BH1745"; + serviceName = "hdf_als_bh1745"; + deviceMatchAttr = "hdf_sensor_als_bh1745_driver"; + } + } + device_sensor_proximity :: device { + device0 :: deviceNode { + policy = 1; + priority = 110; + preload = 0; + permission = 0664; + moduleName = "HDF_SENSOR_PROXIMITY"; + serviceName = "hdf_sensor_proximity"; + deviceMatchAttr = "hdf_sensor_proximity_driver"; + } + } + device_sensor_apds9960 :: device { + device0 :: deviceNode { + policy = 1; + priority = 120; + preload = 0; + permission = 0664; + moduleName = "HDF_SENSOR_PROXIMITY_APDS9960"; + serviceName = "hdf_proximity_apds9960"; + deviceMatchAttr = "hdf_sensor_proximity_adps9960_driver"; + } + } + device_sensor_magnetic :: device { + device0 :: deviceNode { + policy = 1; + priority = 110; + preload = 0; + permission = 0664; + moduleName = "HDF_SENSOR_MAGNETIC"; + serviceName = "hdf_sensor_magnetic"; + deviceMatchAttr = "hdf_sensor_magnetic_driver"; + } + } + device_sensor_lsm303 :: device { + device0 :: deviceNode { + policy = 1; + priority = 120; + preload = 0; + permission = 0664; + moduleName = "HDF_SENSOR_MAGNETIC_LSM303"; + serviceName = "hdf_magnetic_lsm303"; + deviceMatchAttr = "hdf_sensor_magnetic_lsm303_driver"; + } + } + } + usb_pnp_linux :: host { + hostName = "usb_pnp_linux_host"; + device_usb_pnp_linux :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 0; + permission = 0664; + moduleName = "HDF_USB_PNP_NOTIFY"; + serviceName = "hdf_usb_pnp_notify_service"; + deviceMatchAttr = "hdf_usb_pnp_notify_config"; + } + } + } + audio :: host { + hostName = "audio_host"; + priority = 110; + device_dai0 :: device { + device0 :: deviceNode { + policy = 1; + priority = 50; + preload = 0; + permission = 0666; + moduleName = "DAI_uis7885"; + serviceName = "dai_service"; + deviceMatchAttr = "hdf_dai_driver"; + } + } + device_codec_0 :: device { + device0 :: deviceNode { + policy = 1; + priority = 50; + preload = 0; + permission = 0666; + moduleName = "CODEC_RK809"; + serviceName = "codec_service_0"; + deviceMatchAttr = "hdf_codec_driver_0"; + } + } + device_codec_1 :: device { + device0 :: deviceNode { + policy = 1; + priority = 50; + preload = 0; + permission = 0666; + moduleName = "CODEC_RK817"; + serviceName = "codec_service_1"; + deviceMatchAttr = "hdf_codec_driver_1"; + } + } + device_dsp :: device { + device0 :: deviceNode { + policy = 1; + priority = 50; + preload = 0; + permission = 0666; + moduleName = "DSP_uis7885"; + serviceName = "dsp_service_0"; + deviceMatchAttr = "hdf_dsp_driver"; + } + } + device_dma :: device { + device0 :: deviceNode { + policy = 1; + priority = 50; + preload = 0; + permission = 0666; + moduleName = "DMA_uis7885"; + serviceName = "dma_service_0"; + deviceMatchAttr = "hdf_dma_driver"; + } + } + device_audio :: device { + device0 :: deviceNode { + policy = 2; + priority = 60; + preload = 0; + permission = 0666; + moduleName = "HDF_AUDIO"; + deviceMatchAttr = "hdf_audio_driver_0"; + serviceName = "hdf_audio_codec_primary_dev0"; + } + device1 :: deviceNode { + policy = 2; + priority = 60; + preload = 0; + permission = 0666; + moduleName = "HDF_AUDIO"; + deviceMatchAttr = "hdf_audio_driver_1"; + serviceName = "hdf_audio_codec_primary_dev11"; + } + } + device_stream :: device { + device0 :: deviceNode { + policy = 2; + priority = 80; + preload = 0; + permission = 0666; + moduleName = "HDF_AUDIO_STREAM"; + serviceName = "hdf_audio_render"; + } + device1 :: deviceNode { + policy = 2; + priority = 80; + preload = 0; + permission = 0666; + moduleName = "HDF_AUDIO_STREAM"; + serviceName = "hdf_audio_capture"; + } + } + device_control :: device { + device0 :: deviceNode { + policy = 2; + priority = 80; + preload = 0; + permission = 0666; + moduleName = "HDF_AUDIO_CONTROL"; + serviceName = "hdf_audio_control"; + } + } + device_analog_headset :: device { + device0 :: deviceNode { + policy = 1; + priority = 90; + preload = 0; + permission = 0666; + moduleName = "AUDIO_ANALOG_HEADSET"; + serviceName = "analog_headset_service"; + deviceMatchAttr = "analog_headset_attr"; + } + } + } + vibrator :: host { + hostName = "vibrator_host"; + device_vibrator :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 0; + permission = 0664; + moduleName = "HDF_VIBRATOR"; + serviceName = "hdf_misc_vibrator"; + deviceMatchAttr = "hdf_vibrator_driver"; + } + } + device_linear_vibrator :: device { + device0 :: deviceNode { + policy = 1; + priority = 105; + preload = 0; + permission = 0664; + moduleName = "HDF_LINEAR_VIBRATOR"; + serviceName = "hdf_misc_linear_vibrator"; + deviceMatchAttr = "hdf_linear_vibrator_driver"; + } + } + device_drv2605l_vibrator :: device { + device0 :: deviceNode { + policy = 1; + priority = 105; + preload = 0; + permission = 0664; + moduleName = "HDF_DRV2605L_VIBRATOR"; + serviceName = "hdf_misc_drv2605l_vibrator"; + deviceMatchAttr = "hdf_drv2605l_linear_vibrator_driver"; + } + } + } + light :: host { + hostName = "light_host"; + device_light :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 0; + permission = 0664; + moduleName = "HDF_LIGHT"; + serviceName = "hdf_light"; + deviceMatchAttr = "hdf_light_driver"; + } + } + } + } +} diff --git a/oriole/hdf_config/khdf/hdf.hcs b/oriole/hdf_config/khdf/hdf.hcs new file mode 100644 index 0000000000000000000000000000000000000000..86d181701f214c0c631cf2aa70b56753bed20a16 --- /dev/null +++ b/oriole/hdf_config/khdf/hdf.hcs @@ -0,0 +1,26 @@ +#include "device_info/device_info.hcs" +#include "platform/pwm_config.hcs" +#include "platform/uis7885_watchdog_config.hcs" +#include "platform/uis7885_uart_config.hcs" +#include "platform/sdio_config.hcs" +#include "platform/emmc_config.hcs" +#include "platform/uis7885_spi_config.hcs" +#include "input/input_config.hcs" +#include "wifi/wlan_platform.hcs" +#include "wifi/wlan_chip_ap6275s.hcs" +#include "sensor/sensor_config.hcs" +#include "audio/audio_config.hcs" +#include "audio/codec_config.hcs" +#include "audio/dai_config.hcs" +#include "audio/dma_config.hcs" +#include "audio/dsp_config.hcs" +#include "audio/analog_headset_config.hcs" +#include "light/light_config.hcs" +#include "vibrator/vibrator_config.hcs" +#include "vibrator/linear_vibrator_config.hcs" +#include "vibrator/drv2605l_linear_vibrator_config.hcs" +#include "lcd/lcd_config.hcs" + +root { + module = "rockchip,uis7885_chip"; +} diff --git a/oriole/hdf_config/khdf/hdf_test/Makefile b/oriole/hdf_config/khdf/hdf_test/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..084e3f9dfca4b0e25c9c4e2f15b07631fb4732ee --- /dev/null +++ b/oriole/hdf_config/khdf/hdf_test/Makefile @@ -0,0 +1,89 @@ +# +# Copyright (c) 2020-2021 Huawei Device Co., Ltd. +# +# This software is licensed under the terms of the GNU General Public +# License version 2, as published by the Free Software Foundation, and +# may be copied, distributed, and modified under those terms. +# +# 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. +# +# + +ccflags-$(CONFIG_DRIVERS_HDF_TEST) += -I$(srctree)/include/hdf \ + -I$(srctree)/include/hdf/osal \ + -I$(srctree)/include/hdf/utils \ + -I$(srctree)/drivers/hdf/khdf/osal/include \ + -I$(srctree)/drivers/hdf/framework/utils/include + +ifeq ($(LOCAL_HCS_ROOT),) + LOCAL_HCS_ROOT := $(PRODUCT_PATH) +endif + +CURRENT_DIR := $(abspath $(dir $(realpath $(lastword $(MAKEFILE_LIST))))) +SOURCE_ROOT := $(abspath $(CURRENT_DIR)/../../../../../../) + +HC_GEN_DIR := $(abspath $(SOURCE_ROOT)/drivers/hdf_core/framework/tools/hc-gen) +ifneq ($(OUT_DIR),) +HC_GEN := $(OUT_DIR)/kernel/OBJ/${KERNEL_VERSION}/drivers/hdf/khdf/hc_gen_build/hc-gen +else +HC_GEN := $(HC_GEN_DIR)/build/hc-gen +endif +LOCAL_HCS_ROOT := $(CURRENT_DIR) + +HCS_DIR := $(LOCAL_HCS_ROOT) + +ifneq ($(TARGET_BOARD_PLATFORM),) + HCS_DIR := $(LOCAL_HCS_ROOT)/$(TARGET_BOARD_PLATFORM) +else + ifneq ($(CONFIG_ARCH_HI3516DV300),) + HCS_DIR := $(LOCAL_HCS_ROOT) + endif + ifneq ($(CONFIG_ARCH_HI3518EV300),) + HCS_DIR := $(LOCAL_HCS_ROOT) + endif +endif +$(info HCS_DIR = $(HCS_DIR)) +HCB_FLAGS := -b -i -a + +HCS_OBJ := hdf_hcs_hex.o +HCS_OBJ_SRC := $(subst .o,.c,$(notdir $(HCS_OBJ))) + +CONFIG_GEN_HEX_SRC := $(addprefix $(LOCAL_HCS_ROOT)/, $(HCS_OBJ_SRC)) +CONFIG_HCS_SRC := $(subst _hcs_hex.o,.hcs,$(addprefix $(HCS_DIR)/, $(HCS_OBJ))) + +HDF_FRAMWORK_TEST_ROOT = $(abspath $(SOURCE_ROOT)/drivers/hdf_core/framework/test/unittest/utils/hcs_parser/unittest) +HCS_MACRO_OBJ := hcs_macro_cases.o +HCS_MACRO_SRC := $(HDF_FRAMWORK_TEST_ROOT)/hcs_macro_cases.c +HCS_DEP := $(HDF_FRAMWORK_TEST_ROOT)/hdf_macro_test.h +HCS_MACRO_GEN_FILE := $(HDF_FRAMWORK_TEST_ROOT)/hdf_macro_test +HCS_FILE := $(HCS_DIR)/hdf.hcs + +$(obj)/$(HCS_OBJ): $(CONFIG_GEN_HEX_SRC) + $(Q)$(CC) $(c_flags) -c -o $@ $< + $(Q)rm -f $< + +$(CONFIG_GEN_HEX_SRC): $(LOCAL_HCS_ROOT)/%_hcs_hex.c: $(HCS_DIR)/%.hcs | $(HC_GEN) + $(Q)echo gen hdf built-in config + $(Q)if [ ! -d $(dir $@) ]; then mkdir -p $(dir $@); fi + $(Q)$(HC_GEN) $(HCB_FLAGS) -o $(subst _hex.c,,$(@)) $< + +$(CONFIG_GEN_SRCS): $(CONFIG_OUT_DIR)%.c: $(HCS_DIR)/%.hcs | $(HC_GEN) + $(Q)echo gen hdf driver config + $(Q)if [ ! -d $(dir $@) ]; then mkdir -p $(dir $@); fi + $(Q)$(HC_GEN) -t -o $@ $< + +$(HC_GEN): + $(HIDE)make -C $(HC_GEN_DIR) BUILD_DIR=$(dir $@) + +$(obj)/$(HCS_MACRO_OBJ): $(HCS_MACRO_SRC) $(HCS_DEP) + $(Q)$(CC) $(c_flags) -c -o $@ $< + +$(HCS_DEP): $(HC_GEN) + $(Q)echo gen hdf built-in config macro + $(Q)$(HC_GEN) -m -o $(HCS_MACRO_GEN_FILE) $(HCS_FILE) + +obj-$(CONFIG_DRIVERS_HDF) += $(HCS_OBJ) \ + $(HCS_MACRO_OBJ) diff --git a/oriole/hdf_config/khdf/hdf_test/emmc_test_config.hcs b/oriole/hdf_config/khdf/hdf_test/emmc_test_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..fe1d87652ff4bd288ee52df962799aaef50f5292 --- /dev/null +++ b/oriole/hdf_config/khdf/hdf_test/emmc_test_config.hcs @@ -0,0 +1,10 @@ +root { + module = "emmc"; + emmc_config { + emmc_controller_tester { + match_attr = "EMMC_TEST"; + busNum = 0; + hostId = 0; + } + } +} diff --git a/oriole/hdf_config/khdf/hdf_test/gpio_test_config.hcs b/oriole/hdf_config/khdf/hdf_test/gpio_test_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..093f52a91f91a16c095d45584c88f82fbc4eb63a --- /dev/null +++ b/oriole/hdf_config/khdf/hdf_test/gpio_test_config.hcs @@ -0,0 +1,10 @@ +root { + module = "gpio"; + gpio_config { + gpio_controller_tester { + match_attr = "GPIO_TEST"; + gpio = 83; + gpioIrq = 83; + } + } +} diff --git a/oriole/hdf_config/khdf/hdf_test/hdf.hcs b/oriole/hdf_config/khdf/hdf_test/hdf.hcs new file mode 100644 index 0000000000000000000000000000000000000000..c253b38b7e0480649dd6e3c92caed2a313755cc7 --- /dev/null +++ b/oriole/hdf_config/khdf/hdf_test/hdf.hcs @@ -0,0 +1,14 @@ +#include "../hdf.hcs" +#include "hdf_config_test.hcs" +#include "hdf_test_manager/device_info.hcs" +#include "gpio_test_config.hcs" +#include "i2c_test_config.hcs" +#include "pwm_test_config.hcs" +#include "spi_test_config.hcs" +#include "sdio_test_config.hcs" +#include "emmc_test_config.hcs" +#include "uart_test_config.hcs" + +root { + module = "hisilicon,hi35xx_chip"; +} diff --git a/oriole/hdf_config/khdf/hdf_test/hdf_config_test.hcs b/oriole/hdf_config/khdf/hdf_test/hdf_config_test.hcs new file mode 100644 index 0000000000000000000000000000000000000000..ddc7b0962d429034be9df942546a952529c5905b --- /dev/null +++ b/oriole/hdf_config/khdf/hdf_test/hdf_config_test.hcs @@ -0,0 +1,52 @@ +root { + module = "ConfigTest"; + match_attr = "test,config"; + audio_info { + match_attr = "hw,hw_audio_info"; + pa_identifier = "smartpakit"; + smartpa_addr = 65536; + smartpa_num = 1; + builtin_primary_mic_exist = true; + builtin_second_mic_exist = true; + voice_vol_level = 256; + cust_name = "audio_custom_v2"; + dual_smartpa_delay = "true"; + read_u64data = 0x100000000; + status = "ok"; + } + fingerprint_info { + match_attr = "hw,hw_fingerprint_info"; + read_u32_index = [1, 256, 65536]; + finger_info = &fingerprint_one; + audio_info = &root.audio_info; + fingerprint_one { + product = "test"; + chip = "one"; + one_child { + status = "ok"; + } + status = "ok"; + } + dual_fingerprint = "false"; + fingerprint_two: fingerprint_one { + chip = "two"; + status = "disable"; + } + string_list_names = ["first", "second", "third"]; + status = "ok"; + } + data_type_test { + match_attr = "hw,data_type_test"; + read_four_data_type = [0x1, 0x100, 0x10000, 0x100000000]; + test_u8_elem_data = [0, 1, 2, 3, 4, 5, 6, 7]; + test_u16_elem_data = [0, 1, 2, 3, 4, 5, 256, 257]; + } + board_id = [65536, 256]; + support_Device = "TP LCD Sensor"; + fingerprint_three: root.fingerprint_info.fingerprint_one { + chip = "three"; + status = "disable"; + } + modem_id = [0xF6B40136, 0x0]; + boardId = 8000; +} diff --git a/oriole/hdf_config/khdf/hdf_test/hdf_hcs.hcb b/oriole/hdf_config/khdf/hdf_test/hdf_hcs.hcb new file mode 100644 index 0000000000000000000000000000000000000000..2e054ae27b205098c980506b377f717ff1b8832f Binary files /dev/null and b/oriole/hdf_config/khdf/hdf_test/hdf_hcs.hcb differ diff --git a/oriole/hdf_config/khdf/hdf_test/hdf_test_manager/device_info.hcs b/oriole/hdf_config/khdf/hdf_test/hdf_test_manager/device_info.hcs new file mode 100644 index 0000000000000000000000000000000000000000..a772d59e63ea602b9570f905db9bc42f53e26ccd --- /dev/null +++ b/oriole/hdf_config/khdf/hdf_test/hdf_test_manager/device_info.hcs @@ -0,0 +1,143 @@ +root { + device_info { + test_host :: host { + hostName = "test_host"; + priority = 180; + device_hdf_test :: device { + device0 :: deviceNode { + policy = 2; + priority = 10; + preload = 0; + permission = 0644; + moduleName = "khdf_ut"; + serviceName = "khdf_ut"; + } + device1 :: deviceNode { + policy = 2; + priority = 10; + preload = 0; + permission = 0644; + moduleName = "sample_driver"; + serviceName = "sample_service"; + } + device2 :: deviceNode { + policy = 2; + priority = 10; + preload = 0; + permission = 0644; + moduleName = "pm_test_driver"; + serviceName = "pm_ut_service"; + } + device3 :: deviceNode { + policy = 2; + priority = 10; + preload = 2; + permission = 0644; + moduleName = "hdf_test_helper"; + serviceName = "hdf_test_helper"; + } + device_uevent_ut :: deviceNode { + policy = 2; + priority = 10; + preload = 0; + permission = 0644; + moduleName = "uevent_ut_driver"; + serviceName = "hdf_uevent_ut"; + } + } + device_platform_test :: device { + gpio_tester :: deviceNode { + policy = 1; + priority = 101; + preload = 0; + permission = 0644; + moduleName = "PLATFORM_GPIO_TEST"; + deviceMatchAttr = "GPIO_TEST"; + serviceName = "GPIO_TEST"; + } + i2c_tester :: deviceNode { + policy = 2; + priority = 101; + preload = 0; + permission = 0644; + moduleName = "PLATFORM_I2C_TEST"; + deviceMatchAttr = "I2C_TEST"; + serviceName = "I2C_TEST"; + } + pwm_test :: deviceNode { + policy = 1; + priority = 110; + preload = 0; + permission = 0644; + moduleName = "PLATFORM_PWM_TEST"; + serviceName = "PWM_TEST"; + deviceMatchAttr = "PWM_TEST"; + } + spi_test :: deviceNode { + policy = 1; + priority = 100; + preload = 0; + permission = 0644; + moduleName = "PLATFORM_SPI_TEST"; + serviceName = "SPI_TEST"; + deviceMatchAttr = "SPI_TEST"; + } + emmc_tester :: deviceNode { + policy = 1; + priority = 100; + preload = 0; + permission = 0644; + moduleName = "PLATFORM_EMMC_TEST"; + serviceName = "EMMC_TEST"; + deviceMatchAttr = "EMMC_TEST"; + } + sdio_tester :: deviceNode { + policy = 1; + priority = 100; + preload = 0; + permission = 0644; + moduleName = "PLATFORM_SDIO_TEST"; + serviceName = "SDIO_TEST"; + deviceMatchAttr = "SDIO_TEST"; + } + watchdog_test :: deviceNode { + policy = 1; + priority = 110; + preload = 0; + permission = 0660; + moduleName = "PLATFORM_WATCHDOG_TEST"; + serviceName = "WATCHDOG_TEST"; + deviceMatchAttr = "WATCHDOG_TEST"; + } + mipi_dsi_test :: deviceNode { + policy = 1; + priority = 100; + preload = 0; + permission = 0644; + moduleName = "PLATFORM_MIPI_DSI_TEST"; + serviceName = "PLATFORM_MIPI_DSI_TEST"; + deviceMatchAttr = "PLATFORM_MIPI_DSI_TEST"; + } + uart_tester :: deviceNode { + policy = 1; + priority = 100; + preload = 0; + permission = 0644; + moduleName = "PLATFORM_UART_TEST"; + serviceName = "UART_TEST"; + deviceMatchAttr = "UART_TEST"; + } + } + device_sensor_test :: device { + sensor_tester :: deviceNode { + policy = 0; + priority = 100; + preload = 0; + permission = 0644; + moduleName = "HDF_SENSOR_TEST_DRIVER"; + } + } + } + } +} + diff --git a/oriole/hdf_config/khdf/hdf_test/i2c_test_config.hcs b/oriole/hdf_config/khdf/hdf_test/i2c_test_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..9d706242928369cbdba64e0769437954832d8b7f --- /dev/null +++ b/oriole/hdf_config/khdf/hdf_test/i2c_test_config.hcs @@ -0,0 +1,13 @@ +root { + module = "i2c"; + i2c_config { + i2c_controller_tester { + match_attr = "I2C_TEST"; + bus_num = 1; + dev_addr = 0x5d; + reg_addr = 0xd0; + reg_len = 2; + buf_size = 7; + } + } +} diff --git a/oriole/hdf_config/khdf/hdf_test/pwm_test_config.hcs b/oriole/hdf_config/khdf/hdf_test/pwm_test_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..d29d8cee0162c592f38eb8433c28b0f09a18ecc5 --- /dev/null +++ b/oriole/hdf_config/khdf/hdf_test/pwm_test_config.hcs @@ -0,0 +1,11 @@ +root { + pwm_test { + module = "pwm_test"; + match_attr = "PWM_TEST"; + num = 0; + period = 999; + duty = 333; + polarity = 0; + status = 1; + } +} diff --git a/oriole/hdf_config/khdf/hdf_test/sdio_test_config.hcs b/oriole/hdf_config/khdf/hdf_test/sdio_test_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..9f1835a7d42a76bf4950c8e7e77d867c8f67264e --- /dev/null +++ b/oriole/hdf_config/khdf/hdf_test/sdio_test_config.hcs @@ -0,0 +1,12 @@ +root { + module = "sdio"; + sdio_config { + sdio_controller_tester { + match_attr = "SDIO_TEST"; + busNum = 2; + funcNum = 1; + vendorId = 0x296; + deviceId = 0x5347; + } + } +} diff --git a/oriole/hdf_config/khdf/hdf_test/spi_test_config.hcs b/oriole/hdf_config/khdf/hdf_test/spi_test_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..028707ed1b9f8e01e1cbb82609f9c3d48bff96d3 --- /dev/null +++ b/oriole/hdf_config/khdf/hdf_test/spi_test_config.hcs @@ -0,0 +1,10 @@ +root { + spi_test { + module = "spi_test"; + match_attr = "SPI_TEST"; + bus = 0; + cs = 0; + len = 8; + wbuf = [0xa1, 0xb2, 0xc3, 0xd4, 0xe5, 0xf6, 0x78, 0x90]; + } +} diff --git a/oriole/hdf_config/khdf/hdf_test/uart_test_config.hcs b/oriole/hdf_config/khdf/hdf_test/uart_test_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..54ae69c76e7005871eac9d99802e9b384214a1e6 --- /dev/null +++ b/oriole/hdf_config/khdf/hdf_test/uart_test_config.hcs @@ -0,0 +1,9 @@ +root { + uart_test { + module = "uart_test"; + match_attr = "UART_TEST"; + port = 1; + len = 8; + wbuf = [0xa1, 0xb2, 0xc3, 0xd4, 0xe5, 0xf6, 0x78, 0x90]; + } +} \ No newline at end of file diff --git a/oriole/hdf_config/khdf/input/input_config.hcs b/oriole/hdf_config/khdf/input/input_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..4954bfee31a8c37b78531c9625cc5b2d4a017538 --- /dev/null +++ b/oriole/hdf_config/khdf/input/input_config.hcs @@ -0,0 +1,262 @@ +root { + input_config { + touchConfig { + touch0 { + boardConfig { + match_attr = "touch_device1"; + inputAttr { + /* 0:touch 1:key 2:keyboard 3:mouse 4:button 5:crown 6:encoder */ + inputType = 0; + solutionX = 1080; + solutionY = 2408; + devName = "main_touch"; + } +//NVT_NT36XXX + busConfig { + busType = 1; // 0:i2c 1:spi + busNum = 1; // spi1 + clkGpio = 0; + csGpio = 0; + misoGpio = 1; + mosiGpio = 1; + busAddr = 0; + regWidth = 2; // 2 bytes + spiClkReg = [0, 0]; + spiCsReg = [0, 0]; + spiMisoReg = [0, 0]; + spiMosiReg = [0, 0]; + } + + pinConfig { + rstGpio = 60; + intGpio = 61; + rstRegCfg = [0x112f0094, 0x400]; + intRegCfg = [0x112f0098, 0x400]; + } +// Hi3516DV300-Runhe gt911--5p5 & 4p0 +/* + busConfig { + // 0:i2c 1:spi + busType = 0; + busNum = 1; + clkGpio = 86; + dataGpio = 87; + i2cClkIomux = [0x114f0048, 0x403]; + i2cDataIomux = [0x114f004c, 0x403]; + } + + pinConfig { + rstGpio = 14; + intGpio = 13; + rstRegCfg = [0x112f0094, 0x400]; + intRegCfg = [0x112f0098, 0x400]; + } +*/ +// Hi3516DV300-Ruishi gt911--7p0 +/* + busConfig { + // 0:i2c 1:spi + busType = 0; + busNum = 6; + clkGpio = 26; + dataGpio = 27; + i2cClkIomux = [0x114f0048, 0x403]; + i2cDataIomux = [0x114f004c, 0x403]; + } + + pinConfig { + rstGpio = 13; + intGpio = 12; + rstRegCfg = [0x10ff0030, 0x400]; + intRegCfg = [0x10ff002C, 0x400]; + } +*/ +// Hi3516DV300-Demo board: ft6336--2p35 +/* + busConfig { + // 0:i2c 1:spi + busType = 0; + busNum = 3; + clkGpio = 2; + dataGpio = 1; + i2cClkIomux = [0x112f0090, 0x5f1]; + i2cDataIomux = [0x112f008c, 0x5f1]; + } + + pinConfig { + rstGpio = 3; + intGpio = 4; + rstRegCfg = [0x0, 0x0]; + intRegCfg = [0x112f0098, 0x5f0]; + } +*/ + powerConfig { + /* 0:unused 1:ldo 2:gpio 3:pmic */ + vccType = 2; + vccNum = 175; // gpio175 + vccValue = 1800; + vciType = 1; + vciNum = 12; // ldo12 + vciValue = 3300; + } + + featureConfig { + capacitanceTest = 0; + gestureMode = 0; + gloverMOde = 0; + coverMode = 0; + chargerMode = 0; + knuckleMode = 0; + } + } + + chipConfig { + template touchChip { + match_attr = ""; + chipName = "gt911"; + vendorName = "zsj"; + chipInfo = "AAAA11222"; // 4-ProjectName, 2-TP IC, 3-TP Module + /* 0:i2c 1:spi*/ + busType = 0; + deviceAddr = 0x5D; + /* 0:None 1:Rising 2:Failing 4:High-level 8:Low-level */ + irqFlag = 2; + maxSpeed = 400; + chipVersion = 0; //parse Coord TypeA + powerSequence { + /* [type, status, dir , delay] + 0:none 1:vcc-1.8v 2:vci-3.3v 3:reset 4:int + 0:off or low 1:on or high 2:no ops + 0:input 1:output 2:no ops + meanings delay xms, 20: delay 20ms + */ + powerOnSeq = [4, 0, 1, 5, + 3, 0, 1, 10, + 3, 1, 1, 60, + 4, 2, 0, 50]; + suspendSeq = [3, 0, 2, 10]; + resumeSeq = [3, 1, 2, 10]; + powerOffSeq = [3, 0, 2, 10, + 1, 0, 2, 20]; + } + } + + chip0 :: touchChip { + match_attr = "zsj_gt911_5p5"; + chipInfo = "ZIDN45100"; // 4-ProjectName, 2-TP IC, 3-TP Module + chipVersion = 0; //parse point by TypeA + } + + chip1 :: touchChip { + match_attr = "zsj_gt911_4p0"; + chipInfo = "ZIDN45101"; + chipVersion = 1; //parse point by TypeB + } + + chip2 :: touchChip { + match_attr = "tg_gt911_7p0"; + vendorName = "tg"; + chipInfo = "ZIDN45102"; + chipVersion = 2; //parse point by TypeC + } + + chip3 :: touchChip { + match_attr = "st_ft6336_2p35"; + chipName = "ft6336"; + vendorName = "st"; + chipInfo = "ZIDN53200"; + deviceAddr = 0x38; + irqFlag = 1; // Rising + powerSequence { + /* [type, status, dir , delay] + 0:none 1:vcc-1.8v 2:vci-3.3v 3:reset 4:int + 0:off or low 1:on or high 2:no ops + 0:input 1:output 2:no ops + meanings delay xms, 20: delay 20ms + */ + powerOnSeq = [4, 2, 0, 0, + 3, 1, 1, 2, + 3, 0, 2, 5, + 3, 1, 2, 200]; + suspendSeq = [3, 0, 2, 10]; + resumeSeq = [3, 1, 2, 10]; + powerOffSeq = [3, 0, 2, 10, + 1, 0, 2, 20]; + } + } + chip4 :: touchChip { + match_attr = "novatek_nt36xxx_nvt"; + chipName = "nt36xxx"; + vendorName = "novatek"; + chipInfo = "NT36xxx"; + busType = 1; + irqFlag = 1; // Rising + wordMode = 8; + commMode = 3; + transferMode = 3; + maxSpeed = 8000000; + csSetupTime = 25; + csHoldTime = 25; + csRecoveryTime = 2; + + //deviceAddr = 0x38; + + powerSequence { + /* [type, status, dir , delay] + 0:none 1:vcc-1.8v 2:vci-3.3v 3:reset 4:int + 0:off or low 1:on or high 2:no ops + 0:input 1:output 2:no ops + meanings delay xms, 20: delay 20ms + */ + powerOnSeq = [3, 0, 1, 10, + 3, 1, 1, 1000]; + suspendSeq = [3, 0, 2, 10]; + resumeSeq = [3, 0, 1, 1000, + 3, 1, 1, 20]; + powerOffSeq = [3, 0, 2, 10, + 1, 0, 2, 20]; + } + } + } + } + } + + keyConfig { + keyList = ["power", "VolUp", "VolDown", "Up", "Down", "Left", "Right"]; + keyInfoList { + key1 { + match_attr = "key_device0"; + /* 0:touch 1:key 2:keyboard 3:mouse 4:button 5:crown 6:encoder */ + inputType = 1; + keyName = "power"; + gpioNum = 1; + irqFlag = 3; + debounceTime = 80; + } + + key2 { + keyName = "volUp"; + gpioNum = 31; + irqFlag = 1; + debounceTime = 80; + } + + key3 { + keyName = "volDown"; + gpioNum = 32; + irqFlag = 1; + debounceTime = 80; + } + } + } + infraredConfig { + infrared1 { + match_attr = "Infrared_device0"; + infraredName = "raspberryInfrared"; + inputType = 1; + gpioNum = 29; + irqFlag = 1; + } + } + } +} diff --git a/oriole/hdf_config/khdf/lcd/lcd_config.hcs b/oriole/hdf_config/khdf/lcd/lcd_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..dd1ea37befacdbed5091f95de6cc873409ce1623 --- /dev/null +++ b/oriole/hdf_config/khdf/lcd/lcd_config.hcs @@ -0,0 +1,13 @@ +root { + backlightConfig { + pwmBacklightConfig { + match_attr = "pwm_bl_dev"; + pwmDevNum = 1; + pwmMaxPeriod = 25000; + backlightDevName = "hdf_pwm"; + minBrightness = 0; + defBrightness = 127; + maxBrightness = 255; + } + } +} \ No newline at end of file diff --git a/oriole/hdf_config/khdf/light/light_config.hcs b/oriole/hdf_config/khdf/light/light_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..1f744099f851388fd9994b2698556cfd68ce7413 --- /dev/null +++ b/oriole/hdf_config/khdf/light/light_config.hcs @@ -0,0 +1,25 @@ +root { + lightConfig { + boardConfig { + match_attr = "hdf_light_driver"; + lightAttr { + light01 { + lightId = [1]; /* Lightid can contain multiple logical light ID, for example: + 1 indicates the power indicator. These logic lights work on + the same physical light light01. */ + lightName = "battery"; + lightNumber = 1; + busRNum = 147; // Red corresponding GPIO. + busGNum = 146; // Green corresponding GPIO. + busBNum = 149; // Blue corresponding GPIO. + defaultBrightness = 0X00FFFFFF; /* System default brightness value. + B: 0-7bit, R: 8-15bit, G: 16-23, extended bit: 24-31bit. */ + onTime = 50; /* The minimum duration (in milliseconds) that the system supports + when the light is on during flashing */ + offTime = 50; /* The minimum duration (in milliseconds) that the system supports + when the light is off during flashing */ + } + } + } + } +} \ No newline at end of file diff --git a/oriole/hdf_config/khdf/platform/emmc_config.hcs b/oriole/hdf_config/khdf/platform/emmc_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..3351c0c469d73461610ad22e8fd35a3c912f6981 --- /dev/null +++ b/oriole/hdf_config/khdf/platform/emmc_config.hcs @@ -0,0 +1,16 @@ +root { + platform { + emmc_config { + template emmc_controller { + match_attr = ""; + hostId = 0; + devType = 0; + } + + controller_0x00 :: emmc_controller { + match_attr = "hisilicon_hi35xx_emmc_0"; + } + } + } +} + diff --git a/oriole/hdf_config/khdf/platform/i2c_config.hcs b/oriole/hdf_config/khdf/platform/i2c_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..7bc3d003306462e3efc4e1f7522a7d3c84d12395 --- /dev/null +++ b/oriole/hdf_config/khdf/platform/i2c_config.hcs @@ -0,0 +1,36 @@ +root { + platform { + i2c_config { + match_attr = "linux_i2c_adapter"; + + template i2c_controller { + bus = 0; + } + + controller_0x120b0000 :: i2c_controller { + bus = 0; + } + controller_0x120b1000 :: i2c_controller { + bus = 1; + } + controller_0x120b2000 :: i2c_controller { + bus = 2; + } + controller_0x120b3000 :: i2c_controller { + bus = 3; + } + controller_0x120b4000 :: i2c_controller { + bus = 4; + } + controller_0x120b5000 :: i2c_controller { + bus = 5; + } + controller_0x120b6000 :: i2c_controller { + bus = 6; + } + controller_0x120b7000 :: i2c_controller { + bus = 7; + } + } + } +} diff --git a/oriole/hdf_config/khdf/platform/pwm_config.hcs b/oriole/hdf_config/khdf/platform/pwm_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..ac7cba0a21c0150603b96b194ac2aa4c1a683735 --- /dev/null +++ b/oriole/hdf_config/khdf/platform/pwm_config.hcs @@ -0,0 +1,37 @@ +root { + platform { + pwm_config { + template pwm_device { + serviceName = ""; + match_attr = ""; + num = 0; + } + + device_pwm_0x00000000 :: pwm_device { + num = 0; + match_attr = "linux_pwm_adapter_0"; + } + + device_pwm_0x00000001 :: pwm_device { + num = 1; + match_attr = "linux_pwm_adapter_1"; + } + + device_pwm_0x00000002 :: pwm_device { + num = 2; + match_attr = "linux_pwm_adapter_2"; + } + + device_pwm_0x00000003 :: pwm_device { + num = 3; + match_attr = "linux_pwm_adapter_3"; + } + + device_pwm_0x00000004 :: pwm_device { + num = 4; + match_attr = "linux_pwm_adapter_4"; + } + } + } +} + diff --git a/oriole/hdf_config/khdf/platform/sdio_config.hcs b/oriole/hdf_config/khdf/platform/sdio_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..5e1018fbf0d8528153fd63c5c48f12cb75adc254 --- /dev/null +++ b/oriole/hdf_config/khdf/platform/sdio_config.hcs @@ -0,0 +1,15 @@ +root { + platform { + sdio_config { + template sdio_controller { + match_attr = ""; + hostId = 2; + devType = 2; + } + controller_0x2dd1 :: sdio_controller { + match_attr = "hisilicon_hi35xx_sdio_0"; + } + } + } +} + diff --git a/oriole/hdf_config/khdf/platform/uis7885_spi_config.hcs b/oriole/hdf_config/khdf/platform/uis7885_spi_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..a7f4089129327719750f3048ec7300a7bc0a4488 --- /dev/null +++ b/oriole/hdf_config/khdf/platform/uis7885_spi_config.hcs @@ -0,0 +1,41 @@ +root { + platform { + spi_config { + template spi_controller { + serviceName = ""; + match_attr = ""; + busNum = 0; + numCs = 0; + } + + controller_0xfe610000 :: spi_controller { + busNum = 0; + numCs = 1; + match_attr = "rockchip_uis7885_spi_0"; + } + + controller_0xfe620000 :: spi_controller { + match_attr = "rockchip_uis7885_spi_1"; + busNum = 1; + numCs = 1; + mode = 0; + bitsPerWord = 8; + speed = 8000000; + isSlave = 0; + } + + controller_0xfe630000 :: spi_controller { + match_attr = "rockchip_uis7885_spi_2"; + busNum = 2; + numCs = 1; + } + controller_0xfe640000 :: spi_controller { + match_attr = "rockchip_uis7885_spi_3"; + busNum = 3; + numCs = 1; + } + } + } +} + + diff --git a/oriole/hdf_config/khdf/platform/uis7885_uart_config.hcs b/oriole/hdf_config/khdf/platform/uis7885_uart_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..d35012727aebb48c4e02cf0b2b577e3c5288964f --- /dev/null +++ b/oriole/hdf_config/khdf/platform/uis7885_uart_config.hcs @@ -0,0 +1,20 @@ +root { + platform { + uart_config { + template uart_device { + serviceName = ""; + match_attr = ""; + driver_name = "ttyS"; + num = 0; + } + + device_uart_0x0000 :: uart_device { + match_attr = "rockchip_uis7885_uart_0"; + } + device_uart_0x0001 :: uart_device { + num = 1; + match_attr = "rockchip_uis7885_uart_1"; + } + } + } +} diff --git a/oriole/hdf_config/khdf/platform/uis7885_watchdog_config.hcs b/oriole/hdf_config/khdf/platform/uis7885_watchdog_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..506e5797791a614f7be660565c0f7eaabdae4481 --- /dev/null +++ b/oriole/hdf_config/khdf/platform/uis7885_watchdog_config.hcs @@ -0,0 +1,16 @@ +root { + platform { + watchdog_config { + template watchdog_device { + serviceName = "HDF_PLATFORM_WATCHDOG_0"; + match_attr = ""; + id = 0; + } + + device_0x12050000 :: watchdog_device { + id = 0; + match_attr = "rockchip_uis7885_watchdog_0"; + } + } + } +} \ No newline at end of file diff --git a/oriole/hdf_config/khdf/sensor/accel/bmi160_config.hcs b/oriole/hdf_config/khdf/sensor/accel/bmi160_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..62ca0c567624f1da4d7d6d308e815cd5595cf52d --- /dev/null +++ b/oriole/hdf_config/khdf/sensor/accel/bmi160_config.hcs @@ -0,0 +1,50 @@ +#include "../sensor_common.hcs" +root { + accel_bmi160_chip_config : sensorConfig { + match_attr = "hdf_sensor_accel_driver"; + sensorInfo :: sensorDeviceInfo { + sensorName = "accelerometer"; + vendorName = "borsh_bmi160"; // max string length is 16 bytes + sensorTypeId = 1; // enum SensorTypeTag + sensorId = 1; // user define sensor id + power = 230; + } + sensorBusConfig :: sensorBusInfo { + busType = 0; // 0:i2c 1:spi + busNum = 6; + busAddr = 0x68; + regWidth = 1; // 1byte + } + sensorIdAttr :: sensorIdInfo { + chipName = "bmi160"; + chipIdRegister = 0x00; + chipIdValue = 0xd1; + } + sensorRegConfig { + /* regAddr: register address + value: config register value + len: size of value + mask: mask of value + delay: config register delay time (ms) + opsType: enum SensorOpsType 0-none 1-read 2-write 3-read_check 4-update_bit + calType: enum SensorBitCalType 0-none 1-set 2-revert 3-xor 4-left shift 5-right shift + shiftNum: shift bits + debug: 0-no debug 1-debug + save: 0-no save 1-save + */ + /* regAddr, value, mask, len, delay, opsType, calType, shiftNum, debug, save */ + initSeqConfig = [ + 0x7e, 0xb6, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x7e, 0x10, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + enableSeqConfig = [ + 0x7e, 0x11, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x41, 0x03, 0xff, 1, 0, 2, 0, 0, 0, 0, + 0x40, 0x08, 0xff, 1, 0, 2, 0, 0, 0, 0 + ]; + disableSeqConfig = [ + 0x7e, 0x10, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + } + } +} \ No newline at end of file diff --git a/oriole/hdf_config/khdf/sensor/accel/mxc6655xa_config.hcs b/oriole/hdf_config/khdf/sensor/accel/mxc6655xa_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..7497fe8427dfab8593bac3e058fea8e8a36be8b9 --- /dev/null +++ b/oriole/hdf_config/khdf/sensor/accel/mxc6655xa_config.hcs @@ -0,0 +1,69 @@ +#include "../sensor_common.hcs" +root { + accel_mxc6655xa_chip_config : sensorConfig { + match_attr = "hdf_sensor_accel_mxc6655xa_driver"; + sensorInfo :: sensorDeviceInfo { + sensorName = "accelerometer"; + vendorName = "memsi_mxc6655xa"; // max string length is 16 bytes + sensorTypeId = 1; // enum SensorTypeTag + sensorId = 1; // user define sensor id + power = 230; + minDelay = 5000000; // nanosecond + maxDelay = 200000000; // nanosecond + } + sensorBusConfig :: sensorBusInfo { + busType = 0; // 0:i2c 1:spi + busNum = 5; + busAddr = 0x15; + regWidth = 1; // 1byte + } + sensorIdAttr :: sensorIdInfo { + chipName = "mxc6655xa"; + chipIdRegister = 0x0f; + chipIdValue = 0x05; + } + sensorDirection { + direction = 1; // chip direction range of value:0-7 + /* 1:negative 0:positive + 0:AXIS_X 1:AXIS_Y 2:AXIS_Z + */ + /* sign[AXIS_X], sign[AXIS_Y], sign[AXIS_Z], map[AXIS_X], map[AXIS_Y], map[AXIS_Z] */ + convert = [ + 0, 0, 0, 0, 1, 2, + 1, 0, 0, 1, 0, 2, + 0, 0, 1, 0, 1, 2, + 0, 1, 0, 1, 0, 2, + 1, 0, 1, 0, 1, 2, + 0, 0, 1, 1, 0, 2, + 0, 1, 1, 0, 1, 2, + 1, 1, 1, 1, 0, 2 + ]; + } + sensorRegConfig { + /* regAddr: register address + value: config register value + len: size of value + mask: mask of value + delay: config register delay time (ms) + opsType: enum SensorOpsType 0-none 1-read 2-write 3-read_check 4-update_bit + calType: enum SensorBitCalType 0-none 1-set 2-revert 3-xor 4-left shift 5-right shift + shiftNum: shift bits + debug: 0-no debug 1-debug + save: 0-no save 1-save + */ + /* regAddr, value, mask, len, delay, opsType, calType, shiftNum, debug, save */ + initSeqConfig = [ + 0x7e, 0xb6, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x7e, 0x10, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + enableSeqConfig = [ + 0x7e, 0x11, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x41, 0x03, 0xff, 1, 0, 2, 0, 0, 0, 0, + 0x40, 0x08, 0xff, 1, 0, 2, 0, 0, 0, 0 + ]; + disableSeqConfig = [ + 0x7e, 0x10, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + } + } +} diff --git a/oriole/hdf_config/khdf/sensor/accel/sc7a20e_config.hcs b/oriole/hdf_config/khdf/sensor/accel/sc7a20e_config.hcs new file mode 100755 index 0000000000000000000000000000000000000000..8d28d5a5a8c89e351388211d604c59edd8296f43 --- /dev/null +++ b/oriole/hdf_config/khdf/sensor/accel/sc7a20e_config.hcs @@ -0,0 +1,71 @@ +#include "../sensor_common.hcs" +root { + accel_sc7a20e_chip_config : sensorConfig { + match_attr = "hdf_sensor_accel_sc7a20e_driver"; + sensorInfo :: sensorDeviceInfo { + sensorName = "accelerometer"; + vendorName = "silan"; // max string length is 16 bytes + sensorTypeId = 1; // enum SensorTypeTag + sensorId = 1; // user define sensor id + power = 170; + minDelay = 5000000; // nanosecond + maxDelay = 320000000; // nanosecond + } + sensorBusConfig :: sensorBusInfo { + busType = 0; // 0:i2c 1:spi + busNum = 8; + busAddr = 0x18; + regWidth = 1; // 1byte + } + sensorIdAttr :: sensorIdInfo { + chipName = "lsm6dsl"; + chipIdRegister = 0x0f; + chipIdValue = 0x11; + } + + sensorDirection { + direction = 1; // chip direction range of value:0-7 + /* 1:negative 0:positive + 0:AXIS_X 1:AXIS_Y 2:AXIS_Z + */ + /* sign[AXIS_X], sign[AXIS_Y], sign[AXIS_Z], map[AXIS_X], map[AXIS_Y], map[AXIS_Z] */ + convert = [ + 0, 0, 0, 0, 1, 2, + 1, 0, 0, 1, 0, 2, + 0, 0, 1, 0, 1, 2, + 0, 1, 0, 1, 0, 2, + 1, 0, 1, 0, 1, 2, + 0, 0, 1, 1, 0, 2, + 0, 1, 1, 0, 1, 2, + 1, 1, 1, 1, 0, 2 + ]; + } + + sensorRegConfig { + /* regAddr: register address + value: config register value + len: size of value + mask: mask of value + delay: config register delay time (ms) + opsType: enum SensorOpsType 0-none 1-read 2-write 3-read_check 4-update_bit + calType: enum SensorBitCalType 0-none 1-set 2-revert 3-xor 4-left shift 5-right shift + shiftNum: shift bits + debug: 0-no debug 1-debug + save: 0-no save 1-save + */ + /* regAddr, value, mask, len, delay, opsType, calType, shiftNum, debug, save */ + initSeqConfig = [ + 0x20, 0x07, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x21, 0x00, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x22, 0x00, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x23, 0x80, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + enableSeqConfig = [ + 0x20, 0x57, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + disableSeqConfig = [ + 0x20, 0x00, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + } + } +} diff --git a/oriole/hdf_config/khdf/sensor/als/bh1745_config.hcs b/oriole/hdf_config/khdf/sensor/als/bh1745_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..dab1a75aa74d8ae18ec30ab027f6f6a63ca3ab3d --- /dev/null +++ b/oriole/hdf_config/khdf/sensor/als/bh1745_config.hcs @@ -0,0 +1,69 @@ +#include "../sensor_common.hcs" +root { + als_bh1745_chip_config : sensorConfig { + match_attr = "hdf_sensor_als_bh1745_driver"; + sensorInfo :: sensorDeviceInfo { + sensorName = "als"; + vendorName = "rohm_bh1745"; // max string length is 16 bytes + sensorTypeId = 5; // enum SensorTypeTag + sensorId = 5; // user define sensor id + power = 230; + } + sensorBusConfig :: sensorBusInfo { + busType = 0; // 0:i2c 1:spi + busNum = 3; + busAddr = 0x38; + regWidth = 1; // 1byte + } + sensorIdAttr :: sensorIdInfo { + chipName = "bh1745"; + chipIdRegister = 0x92; + chipIdValue = 0xE0; + } + sensorRegConfig { + /* regAddr: register address + value: config register value + len: size of value + mask: mask of value + delay: config register delay time (ms) + opsType: enum SensorOpsType 0-none 1-read 2-write 3-read_check 4-update_bit + calType: enum SensorBitCalType 0-none 1-set 2-revert 3-xor 4-left shift 5-right shift + shiftNum: shift bits + debug: 0-no debug 1-debug + save: 0-no save 1-save + */ + /* regAddr, value, mask, len, delay, opsType, calType, shiftNum, debug, save */ + initSeqConfig = [ + 0x40, 0xc0, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x42, 0x90, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x44, 0x02, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x41, 0x01, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + enableSeqConfig = [ + 0x42, 0x10, 0x10, 1, 5, 4, 0, 0, 0, 0, + 0x44, 0x02, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x42, 0x02, 0x03, 1, 5, 4, 1, 0, 0, 0 //16X + ]; + disableSeqConfig = [ + 0x42, 0x00, 0x10, 1, 5, 4, 0, 0, 0, 0 + ]; + } + + extendAlsRegConfig { + /* regAddr, value, mask, len, delay, opsType, calType, shiftNum, debug, save */ + time = [ + 0x41, 0x00, 0x07, 1, 5, 0, 1, 0, 0, 0, //160msec + 0x41, 0x01, 0x07, 1, 5, 0, 1, 0, 0, 0, //320msec + 0x41, 0x02, 0x07, 1, 5, 0, 1, 0, 0, 0, //640msec + 0x41, 0x03, 0x07, 1, 5, 0, 1, 0, 0, 0, //1280msec + 0x41, 0x04, 0x07, 1, 5, 0, 1, 0, 0, 0, //2560msec + 0x41, 0x05, 0x07, 1, 5, 0, 1, 0, 0, 0, //5120msec + ]; + gain = [ + 0x42, 0x00, 0x03, 1, 5, 0, 1, 0, 0, 0, //1X + 0x42, 0x01, 0x03, 1, 5, 0, 1, 0, 0, 0, //2X + 0x42, 0x02, 0x03, 1, 5, 0, 1, 0, 0, 0 //16X + ]; + } + } +} diff --git a/oriole/hdf_config/khdf/sensor/magnetic/magnetic_lsm303_config.hcs b/oriole/hdf_config/khdf/sensor/magnetic/magnetic_lsm303_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..074d717194b4d1f4cf52b737040c0d38d8879bc2 --- /dev/null +++ b/oriole/hdf_config/khdf/sensor/magnetic/magnetic_lsm303_config.hcs @@ -0,0 +1,66 @@ +#include "../sensor_common.hcs" +root { + magnetic_lsm303_chip_config : sensorConfig { + match_attr = "hdf_sensor_magnetic_lsm303_driver"; + sensorInfo :: sensorDeviceInfo { + sensorName = "magnetometer"; + vendorName = "st_lsm303"; // max string length is 16 bytes + sensorTypeId = 6; // enum SensorTypeTag + sensorId = 6; // user define sensor id + power = 110; + } + sensorBusConfig :: sensorBusInfo { + busType = 0; // 0:i2c 1:spi + busNum = 3; + busAddr = 0x1e; + regWidth = 1; // 1byte + } + sensorIdAttr :: sensorIdInfo { + chipName = "lsm303"; + chipIdRegister = 0x0a; + chipIdValue = 0x48; + } + sensorDirection { + direction = 0; // chip direction range of value:0-7 + /* 1:negative 0:positive + 0:AXIS_X 1:AXIS_Y 2:AXIS_Z + */ + /* sign[AXIS_X], sign[AXIS_Y], sign[AXIS_Z], map[AXIS_X], map[AXIS_Y], map[AXIS_Z] */ + convert = [ + 0, 0, 0, 0, 1, 2, + 1, 0, 0, 1, 0, 2, + 0, 0, 1, 0, 1, 2, + 0, 1, 0, 1, 0, 2, + 1, 0, 1, 0, 1, 2, + 0, 0, 1, 1, 0, 2, + 0, 1, 1, 0, 1, 2, + 1, 1, 1, 1, 0, 2 + ]; + } + sensorRegConfig { + /* regAddr: register address + value: config register value + len: size of value + mask: mask of value + delay: config register delay time (ms) + opsType: enum SensorOpsType 0-none 1-read 2-write 3-read_check 4-update_bit + calType: enum SensorBitCalType 0-none 1-set 2-revert 3-xor 4-left shift 5-right shift + shiftNum: shift bits + debug: 0-no debug 1-debug + save: 0-no save 1-save + */ + /* regAddr, value, mask, len, delay, opsType, calType, shiftNum, debug, save */ + initSeqConfig = [ + 0x00, 0x14, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x01, 0xa0, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x02, 0x00, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + enableSeqConfig = [ + 0x02, 0x00, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + disableSeqConfig = [ + 0x02, 0x03, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + } + } +} \ No newline at end of file diff --git a/oriole/hdf_config/khdf/sensor/proximity/proximity_apds9960_config.hcs b/oriole/hdf_config/khdf/sensor/proximity/proximity_apds9960_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..fb4cfc85bb92e6798e83c0d0290a327f7ca208f1 --- /dev/null +++ b/oriole/hdf_config/khdf/sensor/proximity/proximity_apds9960_config.hcs @@ -0,0 +1,48 @@ +#include "../sensor_common.hcs" +root { + proximity_apds9960_chip_config : sensorConfig { + match_attr = "hdf_sensor_proximity_adps9960_driver"; + sensorInfo :: sensorDeviceInfo { + sensorName = "proximity"; + vendorName = "adps9960"; // max string length is 16 bytes + sensorTypeId = 12; // enum SensorTypeTag + sensorId = 12; // user define sensor id + power = 230; + } + sensorBusConfig :: sensorBusInfo { + busType = 0; // 0:i2c 1:spi + busNum = 3; + busAddr = 0x39; + regWidth = 1; // 1byte + } + sensorIdAttr :: sensorIdInfo { + chipName = "adps9960"; + chipIdRegister = 0x92; + chipIdValue = 0xAB; + } + sensorRegConfig { + /* regAddr: register address + value: config register value + len: size of value + mask: mask of value + delay: config register delay time (ms) + opsType: enum SensorOpsType 0-none 1-read 2-write 3-read_check 4-update_bit + calType: enum SensorBitCalType 0-none 1-set 2-revert 3-xor 4-left shift 5-right shift + shiftNum: shift bits + debug: 0-no debug 1-debug + save: 0-no save 1-save + */ + /* regAddr, value, mask, len, delay, opsType, calType, shiftNum, debug, save */ + initSeqConfig = [ + 0x80, 0x05, 0xff, 1, 5, 2, 0, 0, 0, 0, + 0x8f, 0x00, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + enableSeqConfig = [ + 0x80, 0x05, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + disableSeqConfig = [ + 0x80, 0x00, 0xff, 1, 5, 2, 0, 0, 0, 0 + ]; + } + } +} \ No newline at end of file diff --git a/oriole/hdf_config/khdf/sensor/sensor_common.hcs b/oriole/hdf_config/khdf/sensor/sensor_common.hcs new file mode 100644 index 0000000000000000000000000000000000000000..e93a111d3205109b7bc00439897342f87cf67db4 --- /dev/null +++ b/oriole/hdf_config/khdf/sensor/sensor_common.hcs @@ -0,0 +1,32 @@ +// sensor common config template +root { + sensorConfig { + template sensorDeviceInfo { + sensorName = "sensor"; // max string length is 16 bytes + vendorName = "vendorXXX_XXX"; // max string length is 16 bytes + firmwareVersion = "1.0"; + hardwareVersion = "1.0"; + sensorTypeId = 0; // enum SensorTypeTag + sensorId = 0; // user define sensor id, defaultenum SensorTypeTag + maxRange = 8; + accuracy = 0; + power = 0; + minDelay = 0; // nanosecond + maxDelay = 0; // nanosecond + } + + template sensorBusInfo { + busType = 0; // 0:i2c 1:spi + busNum = 6; + busAddr = 0; + regWidth = 1; + regBigEndian = 0; + } + + template sensorIdInfo { + chipName = ""; + chipIdRegister = 0xf; + chipIdValue = 0xd1; + } + } +} diff --git a/oriole/hdf_config/khdf/sensor/sensor_config.hcs b/oriole/hdf_config/khdf/sensor/sensor_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..d27c7f7d71e78145ec1caf4662b6c6e966c9dd0e --- /dev/null +++ b/oriole/hdf_config/khdf/sensor/sensor_config.hcs @@ -0,0 +1,6 @@ +#include "accel/bmi160_config.hcs" +#include "accel/mxc6655xa_config.hcs" +#include "accel/sc7a20e_config.hcs" +#include "als/bh1745_config.hcs" +#include "proximity/proximity_apds9960_config.hcs" +#include "magnetic/magnetic_lsm303_config.hcs" diff --git a/oriole/hdf_config/khdf/vibrator/drv2605l_linear_vibrator_config.hcs b/oriole/hdf_config/khdf/vibrator/drv2605l_linear_vibrator_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..ccacd03e9bce27dc4786519491d3816ebf507bd4 --- /dev/null +++ b/oriole/hdf_config/khdf/vibrator/drv2605l_linear_vibrator_config.hcs @@ -0,0 +1,27 @@ +root { + drv2605lConfig { + match_attr = "hdf_drv2605l_linear_vibrator_driver"; + VibratorBusConfig { + busType = 0; // 0:i2c 1:gpio + busNum = 3; + busAddr = 0x5a; + regWidth = 1; // 1 byte + } + VibratorAttr { + chipIdRegister = 0X00; + chipIdValue = 0XE0; + defaultIntensity = 0XAB; + defaultFrequency = 0X33; + } + VibratorChipConfig { + isSupportIntensity = 1; /* setting intensity capability. 1 indicates support, + 0 indicates not support. */ + isSupportFrequency = 1; /* setting frequency capability. 1 indicates support, + 0 indicates not support. */ + intensityMaxValue = 100; // Max intensity + intensityMinValue = 0; // Min intensity + frequencyMaxValue = 500; // Max frequency + frequencyMinValue = 0; // Min frequency + } + } +} \ No newline at end of file diff --git a/oriole/hdf_config/khdf/vibrator/linear_vibrator_config.hcs b/oriole/hdf_config/khdf/vibrator/linear_vibrator_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..7662a7223567512cb8a9aa1f80f2eafe96aac4b6 --- /dev/null +++ b/oriole/hdf_config/khdf/vibrator/linear_vibrator_config.hcs @@ -0,0 +1,21 @@ +root { + linearVibratorConfig { + boardConfig { + match_attr = "hdf_linear_vibrator_driver"; + VibratorBusConfig { + busType = 1; // 0:i2c 1:gpio + busNum = 154; + } + VibratorChipConfig { + isSupportIntensity = 0; /* setting intensity capability. 1 indicates support, + 0 indicates not support. */ + isSupportFrequency = 0; /* setting frequency capability. 1 indicates support, + 0 indicates not support. */ + intensityMaxValue = 0; // Max intensity + intensityMinValue = 0; // Min intensity + frequencyMaxValue = 0; // Max frequency + frequencyMinValue = 0; // Min frequency + } + } + } +} diff --git a/oriole/hdf_config/khdf/vibrator/vibrator_config.hcs b/oriole/hdf_config/khdf/vibrator/vibrator_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..2f39ba28372de69fd33efe92e7ddd57100b8287d --- /dev/null +++ b/oriole/hdf_config/khdf/vibrator/vibrator_config.hcs @@ -0,0 +1,24 @@ +root { + vibratorConfig { + boardConfig { + match_attr = "hdf_vibrator_driver"; + vibratorAttr { + /* 0:rotor 1:linear */ + deviceType = 1; + supportPreset = 1; + } + vibratorHapticConfig { + haptic_clock_timer { + effectName = "haptic.clock.timer"; + type = 1; // 0 means built-in, 1 time series + seq = [600, 600, 200, 600]; // time seq + } + haptic_default_effect { + effectName = "haptic.default.effect"; + type = 0; + seq = [0, 3, 800, 1]; + } + } + } + } +} diff --git a/oriole/hdf_config/khdf/wifi/wlan_chip_ap6275s.hcs b/oriole/hdf_config/khdf/wifi/wlan_chip_ap6275s.hcs new file mode 100644 index 0000000000000000000000000000000000000000..8e825b77d1a17d4fe6d75bd5cffa10dcca762e8b --- /dev/null +++ b/oriole/hdf_config/khdf/wifi/wlan_chip_ap6275s.hcs @@ -0,0 +1,14 @@ +root { + wlan_config { + ap6275s :& chipList { + chipAp6275s :: chipInst { + match_attr = "hdf_wlan_chips_ap6275s"; + driverName = "ap6275s"; + bus { + vendorId = 0x0296; + deviceId = [0x5347]; + } + } + } + } +} diff --git a/oriole/hdf_config/khdf/wifi/wlan_chip_hi3881.hcs b/oriole/hdf_config/khdf/wifi/wlan_chip_hi3881.hcs new file mode 100644 index 0000000000000000000000000000000000000000..5ee000574502196f0aea4011c0ec75cd6338015d --- /dev/null +++ b/oriole/hdf_config/khdf/wifi/wlan_chip_hi3881.hcs @@ -0,0 +1,14 @@ +root { + wlan_config { + hi3881 :& chipList { + chipHi3881 :: chipInst { + match_attr = "hdf_wlan_chips_hi3881"; + driverName = "hisi"; + bus { + vendorId = 0x0296; + deviceId = [0x5347]; + } + } + } + } +} \ No newline at end of file diff --git a/oriole/hdf_config/khdf/wifi/wlan_platform.hcs b/oriole/hdf_config/khdf/wifi/wlan_platform.hcs new file mode 100644 index 0000000000000000000000000000000000000000..7d88358dbde9b8171bf993774d7eb3b9b60e5057 --- /dev/null +++ b/oriole/hdf_config/khdf/wifi/wlan_platform.hcs @@ -0,0 +1,114 @@ +root { + module = "wlan"; + wlan_config { + match_attr = "hdf_wlan_driver"; + hostChipName = "uis7885"; + moduleConfig { + featureMap = 0xFFFF; + msgName = "WalService"; + Station { + name = "sta"; + mode = true; + } + + HostAp { + name = "ap"; + mode = 0; /* 0-- notsupported; 1--softap-host; 2--soft AP DMAC HOST; 3-IOT 1:DMAC OFFLOAD: IPC */ + vapResNum = 1; /*virtual ap*/ + userResNum = 8; /*max users support each ap*/ + } + + P2P { + name = "p2p"; + mode = false; + } + + Mac80211 { + mode = true; + } + + Phy { + mode = true; + } + } + deviceList { + template deviceInst { + deviceInstId = 0; + powers { + power0 { + powerSeqDelay = 0; + powerType = 1; /* AlwaysON(0);GPIO(1) */ + gpioId = 1; + activeLevel=1; /* High(1); Low(0) */ + } + power1 { + /* to support two-stage power supply */ + powerSeqDelay = 0; + powerType = 0; + gpioId = 1; + activeLevel=1; /* High(1); Low(0) */ + } + } + reset { + resetType = 1; /* NotManaged(0);GPIO(1) */ + gpioId = 2; + activeLevel = 1; /* High(1); Low(0) */ + resetHoldTime = 30; /*In ms*/ + } + bootUpTimeOut = 30; + bus { + busEnable = 0; /* 0-not enable; 1-enable */ + busType = 0; /* 0-sdio 1-usb 2-spi etc. */ + busIdx = 2; + funcNum = [1,2]; + timeout = 1000; + blockSize = 512; + } + } + } + bdh :& deviceList { + device0 :: deviceInst { + deviceInstId = 0; + powers { + power0 { + powerSeqDelay = 0; + powerType = 0; /* AlwaysON(0);GPIO(1) */ + gpioId = 91; + activeLevel=1; /* High(1); Low(0) */ + } + power1 { + powerSeqDelay = 0; + powerType = 0; + gpioId = 1; + activeLevel = 1; /* High(1); Low(0) */ + } + } + reset { + resetType = 0; /* NotManaged(0);GPIO(1) */ + gpioId = 90; + activeLevel = 0; /* High(1); Low(0) */ + resetHoldTime = 16; /*In ms*/ + } + bootUpTimeOut = 32; + bus { + busEnable = 0; /* 0-not enable; 1-enable */ + busType = 0; /* 0-sdio 1-usb 2-spi etc. */ + busIdx = 2; + funcNum = [1]; + timeout = 1000; + blockSize = 512; + } + } + } + chipList { + template chipInst { + match_attr = "hdf_wlan_chips_ap6275s"; + driverName = "ap6275s"; + bus { + vendorId = 0x0296; + deviceId = [0x5347]; + } + } + } + } +} diff --git a/oriole/hdf_config/uhdf/BUILD.gn b/oriole/hdf_config/uhdf/BUILD.gn new file mode 100755 index 0000000000000000000000000000000000000000..be99969ff71b536a27387490fc8517dafd08d60c --- /dev/null +++ b/oriole/hdf_config/uhdf/BUILD.gn @@ -0,0 +1,33 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# 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. + +import("//drivers/hdf_core/adapter/uhdf2/hcs/hcs.gni") + +hdf_hcb("hdf_default.hcb") { + source = "./hdf.hcs" + part_name = "product_oriole" + subsystem_name = "product_oriole" +} + +hdf_cfg("hdf_devhost.cfg") { + source = "./hdf.hcs" + part_name = "product_oriole" + subsystem_name = "product_oriole" +} + +group("hdf_config") { + deps = [ + ":hdf_default.hcb", + ":hdf_devhost.cfg", + ] +} \ No newline at end of file diff --git a/oriole/hdf_config/uhdf/camera/hdi_impl/camera_host_config.hcs b/oriole/hdf_config/uhdf/camera/hdi_impl/camera_host_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..701f73b9fde0e6654b3a8796a9fe8d0b81b36581 --- /dev/null +++ b/oriole/hdf_config/uhdf/camera/hdi_impl/camera_host_config.hcs @@ -0,0 +1,422 @@ +root { + module="sample"; + vdiLibList = [ + "libcamera_host_vdi_impl_1.0.z.so" + ]; + camera_host_config { + match_attr = "camera_host_interface"; + template ability { + logicCameraId = "lcam001"; + physicsCameraIds = [ + "CAMERA_FIRST", + "CAMERA_SECOND", + "CAMERA_THIRD" + ]; + metadata { + aeAvailableAntiBandingModes = [ + "OHOS_CONTROL_AE_ANTIBANDING_MODE_OFF", + "OHOS_CONTROL_AE_ANTIBANDING_MODE_50HZ", + "OHOS_CONTROL_AE_ANTIBANDING_MODE_60HZ", + "OHOS_CONTROL_AE_ANTIBANDING_MODE_AUTO" + ]; + aeAvailableModes = ["OHOS_CONTROL_AE_MODE_ON"]; + availableFpsRange = [15, 30]; + aeCompensationRange = [0, 0]; + aeCompensationSteps = [0, 1]; + availableAwbModes = [ + "OHOS_CONTROL_AWB_MODE_OFF" + ]; + sceneModesOverrides = [ + "OHOS_CONTROL_AE_MODE_ON", + "OHOS_CONTROL_AWB_MODE_AUTO" + ]; + aeLockAvailable = "OHOS_CONTROL_AE_LOCK_AVAILABLE_FALSE"; + awbLockAvailable = "OHOS_CONTROL_AWB_LOCK_AVAILABLE_FALSE"; + sensitivityRange = [32, 2400]; + exposureTimeRange = [100000, 200000000]; + faceDetectMode = "OHOS_STATISTICS_FACE_DETECT_MODE_OFF"; + maxFaceCount = 0; + flashAvailable = "OHOS_FLASH_INFO_AVAILABLE_FALSE"; + lensFacing = "OHOS_LENS_FACING_FRONT"; + opticalStabilizations = ["OHOS_LENS_OPTICAL_STABILIZATION_MODE_OFF"]; + maxDigitalZoom = "1"; + availableCharacteristicsKeys = [ + "OHOS_COLOR_CORRECTION_AVAILABLE_ABERRATION_MODES", + "OHOS_CONTROL_AE_AVAILABLE_ANTIBANDING_MODES", + "OHOS_CONTROL_AE_AVAILABLE_MODES", + "OHOS_ABILITY_FPS_RANGES", + "OHOS_CONTROL_AE_COMPENSATION_RANGE", + "OHOS_CONTROL_AE_COMPENSATION_STEP", + "OHOS_CONTROL_AVAILABLE_EFFECTS", + "OHOS_CONTROL_AVAILABLE_SCENE_MODES", + "OHOS_CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES", + "OHOS_CONTROL_AWB_AVAILABLE_MODES", + "OHOS_CONTROL_MAX_REGIONS", + "OHOS_CONTROL_SCENE_MODE_OVERRIDES", + "OHOS_CONTROL_AE_LOCK_AVAILABLE", + "OHOS_CONTROL_AWB_LOCK_AVAILABLE", + "OHOS_CONTROL_AVAILABLE_MODES", + "OHOS_JPEG_AVAILABLE_THUMBNAIL_SIZES", + "OHOS_JPEG_MAX_SIZE", + "OHOS_SENSOR_INFO_PIXEL_ARRAY_SIZE", + "OHOS_SENSOR_INFO_ACTIVE_ARRAY_SIZE", + "OHOS_SENSOR_INFO_SENSITIVITY_RANGE", + "OHOS_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT", + "OHOS_SENSOR_INFO_EXPOSURE_TIME_RANGE", + "OHOS_SENSOR_ORIENTATION", + "OHOS_SENSOR_AVAILABLE_TEST_PATTERN_MODES", + "OHOS_SENSOR_INFO_PHYSICAL_SIZE", + "OHOS_SENSOR_INFO_TIMESTAMP_SOURCE", + "OHOS_STATISTICS_INFO_AVAILABLE_FACE_DETECT_MODES", + "OHOS_STATISTICS_INFO_MAX_FACE_COUNT", + "OHOS_SYNC_MAX_LATENCY", + "OHOS_FLASH_INFO_AVAILABLE", + "OHOS_LENS_INFO_AVAILABLE_APERTURES", + "OHOS_LENS_FACING", + "OHOS_LENS_INFO_AVAILABLE_FOCAL_LENGTHS", + "OHOS_LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION", + "OHOS_LENS_INFO_HYPERFOCAL_DISTANCE", + "OHOS_LENS_INFO_MINIMUM_FOCUS_DISTANCE", + "OHOS_NOISE_REDUCTION_AVAILABLE_NOISE_REDUCTION_MODES", + "OHOS_SCALER_AVAILABLE_MAX_DIGITAL_ZOOM", + "OHOS_SCALER_AVAILABLE_STREAM_CONFIGURATIONS", + "OHOS_SCALER_AVAILABLE_STALL_DURATIONS", + "OHOS_SCALER_AVAILABLE_MIN_FRAME_DURATIONS", + "OHOS_SCALER_CROPPING_TYPE", + "OHOS_INFO_SUPPORTED_HARDWARE_LEVEL", + "OHOS_REQUEST_PARTIAL_RESULT_COUNT", + "OHOS_REQUEST_PIPELINE_MAX_DEPTH", + "OHOS_REQUEST_MAX_NUM_OUTPUT_STREAMS", + "OHOS_REQUEST_MAX_NUM_INPUT_STREAMS", + "OHOS_REQUEST_AVAILABLE_CAPABILITIES" + ]; + availableRequestKeys = [ + "OHOS_CONTROL_AE_MODE", + "OHOS_CONTROL_AE_EXPOSURE_COMPENSATION", + "OHOS_CONTROL_AE_PRECAPTURE_TRIGGER", + "OHOS_CONTROL_AE_TARGET_FPS_RANGE", + "OHOS_CONTROL_AE_ANTIBANDING_MODE", + "OHOS_CONTROL_AWB_MODE", + "OHOS_CONTROL_AWB_LOCK", + "OHOS_FLASH_MODE", + "OHOS_STATISTICS_FACE_DETECT_MODE", + "OHOS_NOISE_REDUCTION_MODE", + "OHOS_COLOR_CORRECTION_ABERRATION_MODE", + "OHOS_LENS_APERTURE", + "OHOS_LENS_OPTICAL_STABILIZATION_MODE", + "OHOS_CONTROL_MODE", + "OHOS_CONTROL_CAPTURE_INTENT" + ]; + availableResultKeys = [ + "OHOS_CONTROL_AE_STATE", + "OHOS_CONTROL_AE_LOCK", + "OHOS_CONTROL_AWB_STATE", + "OHOS_CONTROL_AWB_LOCK", + "OHOS_LENS_STATE", + "OHOS_REQUEST_PIPELINE_DEPTH", + "OHOS_SCALER_CROP_REGION", + "OHOS_SENSOR_TIMESTAMP", + "OHOS_SENSOR_ROLLING_SHUTTER_SKEW", + "OHOS_SENSOR_EXPOSURE_TIME", + "OHOS_STATISTICS_LENS_SHADING_MAP_MODE", + "OHOS_STATISTICS_SCENE_FLICKER", + "OHOS_JPEG_SIZE", + "OHOS_JPEG_QUALITY", + "OHOS_JPEG_ORIENTATION" + ]; + } + } + ability_01 :: ability { + logicCameraId = "lcam001"; + physicsCameraIds = [ + "CAMERA_FIRST" + ]; + metadata { + aeAvailableAntiBandingModes = [ + "OHOS_CAMERA_AE_ANTIBANDING_MODE_OFF" + ]; + aeAvailableModes = ["OHOS_CAMERA_AE_MODE_OFF"]; + availableFpsRange = [5, 10]; + cameraPosition = "OHOS_CAMERA_POSITION_BACK"; + cameraType = "OHOS_CAMERA_TYPE_WIDE_ANGLE"; + cameraConnectionType ="OHOS_CAMERA_CONNECTION_TYPE_BUILTIN"; + cameraMemoryType ="OHOS_CAMERA_MEMORY_MMAP"; + faceDetectMaxNum = "10"; + aeCompensationRange = [0, 0]; + aeCompensationSteps = [0, 0]; + availableAwbModes = [ + "OHOS_CAMERA_AWB_MODE_OFF" + ]; + sensitivityRange = [32, 2400]; + faceDetectMode = "OHOS_CAMERA_FACE_DETECT_MODE_OFF"; + availableCharacteristicsKeys = [ + "OHOS_CONTROL_AE_AVAILABLE_ANTIBANDING_MODES", + "OHOS_CONTROL_AE_AVAILABLE_MODES", + "OHOS_ABILITY_FPS_RANGES", + "OHOS_CONTROL_AE_COMPENSATION_RANGE", + "OHOS_CONTROL_AE_COMPENSATION_STEP", + "OHOS_CONTROL_AWB_AVAILABLE_MODES", + "OHOS_JPEG_AVAILABLE_THUMBNAIL_SIZES", + "OHOS_JPEG_MAX_SIZE", + "OHOS_SENSOR_INFO_PIXEL_ARRAY_SIZE", + "OHOS_SENSOR_INFO_ACTIVE_ARRAY_SIZE", + "OHOS_SENSOR_INFO_SENSITIVITY_RANGE", + "OHOS_SENSOR_INFO_PHYSICAL_SIZE", + ]; + availableRequestKeys = [ + "OHOS_CONTROL_AE_MODE", + "OHOS_CONTROL_AE_EXPOSURE_COMPENSATION", + "OHOS_CONTROL_AE_TARGET_FPS_RANGE", + "OHOS_CONTROL_AE_ANTIBANDING_MODE", + "OHOS_CONTROL_AWB_MODE", + "OHOS_CONTROL_AWB_LOCK", + "OHOS_STATISTICS_FACE_DETECT_MODE" + ]; + availableResultKeys = [ + "OHOS_CONTROL_AE_LOCK", + "OHOS_CONTROL_AWB_LOCK", + "OHOS_SENSOR_EXPOSURE_TIME", + "OHOS_JPEG_SIZE", + "OHOS_JPEG_QUALITY", + "OHOS_JPEG_ORIENTATION" + ]; + focalLength = "24.0"; + focusAvailableModes = [ + "OHOS_CAMERA_FOCUS_MODE_MANUAL", + "OHOS_CAMERA_FOCUS_MODE_CONTINUOUS_AUTO", + "OHOS_CAMERA_FOCUS_MODE_AUTO", + "OHOS_CAMERA_FOCUS_MODE_LOCKED" + ]; + exposureAvailableModes = [ + "OHOS_CAMERA_EXPOSURE_MODE_MANUAL", + "OHOS_CAMERA_EXPOSURE_MODE_CONTINUOUS_AUTO", + "OHOS_CAMERA_EXPOSURE_MODE_LOCKED", + "OHOS_CAMERA_EXPOSURE_MODE_AUTO" + ]; + meterAvailableModes = [ + "OHOS_CAMERA_SPOT_METERING", + "OHOS_CAMERA_REGION_METERING", + "OHOS_CAMERA_OVERALL_METERING" + ]; + flashAvailableModes = [ + "OHOS_CAMERA_FLASH_MODE_CLOSE", + "OHOS_CAMERA_FLASH_MODE_OPEN", + "OHOS_CAMERA_FLASH_MODE_AUTO", + "OHOS_CAMERA_FLASH_MODE_ALWAYS_OPEN" + ]; + mirrorSupported = "OHOS_CAMERA_MIRROR_OFF"; + basicAvailableConfigurations = [3, 1280, 960, 4, 4096, 3072]; + extendAvailableConfigurations = [0, 0, 1, 640, 480, 0, -1, 1, 1, 640, 480, 30, -1, 2, 4, 1280, 960, 0, -1, -1]; + sensorOrientationSupported = "90"; + videoStabilizationAvailableModes = [ + "OHOS_CAMERA_VIDEO_STABILIZATION_OFF" + ]; + flashAvailable = "OHOS_CAMERA_FLASH_FALSE"; + afAvailable = [ + "OHOS_CAMERA_AF_MODE_OFF" + ]; + zoomRatioRange = [ + "1.0", + "1.0" + ]; + jpegOrientation= "270"; + jpegQuality= "2"; + } + } + ability_02 :: ability { + logicCameraId = "lcam002"; + physicsCameraIds = [ + "CAMERA_SECOND" + ]; + metadata { + aeAvailableAntiBandingModes = [ + "OHOS_CAMERA_AE_ANTIBANDING_MODE_OFF" + ]; + aeAvailableModes = ["OHOS_CAMERA_AE_MODE_OFF"]; + availableFpsRange = [5, 10]; + cameraPosition = "OHOS_CAMERA_POSITION_FRONT"; + cameraType = "OHOS_CAMERA_TYPE_WIDE_ANGLE"; + cameraConnectionType ="OHOS_CAMERA_CONNECTION_TYPE_BUILTIN"; + cameraMemoryType ="OHOS_CAMERA_MEMORY_MMAP"; + faceDetectMaxNum = "10"; + aeCompensationRange = [0, 0]; + aeCompensationSteps = [0, 0]; + availableAwbModes = [ + "OHOS_CAMERA_AWB_MODE_OFF" + ]; + sensitivityRange = [32, 2400]; + faceDetectMode = "OHOS_CAMERA_FACE_DETECT_MODE_OFF"; + availableCharacteristicsKeys = [ + "OHOS_CONTROL_AE_AVAILABLE_ANTIBANDING_MODES", + "OHOS_CONTROL_AE_AVAILABLE_MODES", + "OHOS_ABILITY_FPS_RANGES", + "OHOS_CONTROL_AE_COMPENSATION_RANGE", + "OHOS_CONTROL_AE_COMPENSATION_STEP", + "OHOS_CONTROL_AWB_AVAILABLE_MODES", + "OHOS_JPEG_AVAILABLE_THUMBNAIL_SIZES", + "OHOS_JPEG_MAX_SIZE", + "OHOS_SENSOR_INFO_PIXEL_ARRAY_SIZE", + "OHOS_SENSOR_INFO_ACTIVE_ARRAY_SIZE", + "OHOS_SENSOR_INFO_SENSITIVITY_RANGE", + "OHOS_SENSOR_INFO_PHYSICAL_SIZE", + ]; + availableRequestKeys = [ + "OHOS_CONTROL_AE_MODE", + "OHOS_CONTROL_AE_EXPOSURE_COMPENSATION", + "OHOS_CONTROL_AE_TARGET_FPS_RANGE", + "OHOS_CONTROL_AE_ANTIBANDING_MODE", + "OHOS_CONTROL_AWB_MODE", + "OHOS_CONTROL_AWB_LOCK", + "OHOS_STATISTICS_FACE_DETECT_MODE" + ]; + availableResultKeys = [ + "OHOS_CONTROL_AE_LOCK", + "OHOS_CONTROL_AWB_LOCK", + "OHOS_SENSOR_EXPOSURE_TIME", + "OHOS_JPEG_SIZE", + "OHOS_JPEG_QUALITY", + "OHOS_JPEG_ORIENTATION" + ]; + focalLength = "24.0"; + focusAvailableModes = [ + "OHOS_CAMERA_FOCUS_MODE_MANUAL", + "OHOS_CAMERA_FOCUS_MODE_CONTINUOUS_AUTO", + "OHOS_CAMERA_FOCUS_MODE_AUTO", + "OHOS_CAMERA_FOCUS_MODE_LOCKED" + ]; + exposureAvailableModes = [ + "OHOS_CAMERA_EXPOSURE_MODE_MANUAL", + "OHOS_CAMERA_EXPOSURE_MODE_CONTINUOUS_AUTO", + "OHOS_CAMERA_EXPOSURE_MODE_LOCKED", + "OHOS_CAMERA_EXPOSURE_MODE_AUTO" + ]; + meterAvailableModes = [ + "OHOS_CAMERA_SPOT_METERING", + "OHOS_CAMERA_REGION_METERING", + "OHOS_CAMERA_OVERALL_METERING" + ]; + flashAvailableModes = [ + "OHOS_CAMERA_FLASH_MODE_CLOSE", + "OHOS_CAMERA_FLASH_MODE_OPEN", + "OHOS_CAMERA_FLASH_MODE_AUTO", + "OHOS_CAMERA_FLASH_MODE_ALWAYS_OPEN" + ]; + mirrorSupported = "OHOS_CAMERA_MIRROR_OFF"; + basicAvailableConfigurations = [3, 1280, 960, 4, 2592, 1944]; + extendAvailableConfigurations = [0, 0, 1, 640, 480, 0, -1, 1, 1, 640, 480, 30, -1, 2, 4, 1280, 960, 0, -1, -1]; + sensorOrientationSupported = "90"; + videoStabilizationAvailableModes = [ + "OHOS_CAMERA_VIDEO_STABILIZATION_OFF" + ]; + flashAvailable = "OHOS_CAMERA_FLASH_FALSE"; + afAvailable = [ + "OHOS_CAMERA_AF_MODE_OFF" + ]; + zoomRatioRange = [ + "1.0", + "1.0" + ]; + jpegOrientation= "270"; + jpegQuality= "2"; + } + } + ability_03 :: ability { + logicCameraId = "lcam003"; + physicsCameraIds = [ + "CAMERA_THIRD" + ]; + metadata { + aeAvailableAntiBandingModes = [ + "OHOS_CAMERA_AE_ANTIBANDING_MODE_OFF" + ]; + aeAvailableModes = ["OHOS_CAMERA_AE_MODE_OFF"]; + availableFpsRange = [5, 10]; + cameraPosition = "OHOS_CAMERA_POSITION_OTHER"; + cameraType = "OHOS_CAMERA_TYPE_WIDE_ANGLE"; + cameraConnectionType ="OHOS_CAMERA_CONNECTION_TYPE_BUILTIN"; + cameraMemoryType ="OHOS_CAMERA_MEMORY_MMAP"; + faceDetectMaxNum = "10"; + aeCompensationRange = [0, 0]; + aeCompensationSteps = [0, 0]; + availableAwbModes = [ + "OHOS_CAMERA_AWB_MODE_OFF" + ]; + sensitivityRange = [32, 2400]; + faceDetectMode = "OHOS_CAMERA_FACE_DETECT_MODE_OFF"; + availableCharacteristicsKeys = [ + "OHOS_CONTROL_AE_AVAILABLE_ANTIBANDING_MODES", + "OHOS_CONTROL_AE_AVAILABLE_MODES", + "OHOS_ABILITY_FPS_RANGES", + "OHOS_CONTROL_AE_COMPENSATION_RANGE", + "OHOS_CONTROL_AE_COMPENSATION_STEP", + "OHOS_CONTROL_AWB_AVAILABLE_MODES", + "OHOS_JPEG_AVAILABLE_THUMBNAIL_SIZES", + "OHOS_JPEG_MAX_SIZE", + "OHOS_SENSOR_INFO_PIXEL_ARRAY_SIZE", + "OHOS_SENSOR_INFO_ACTIVE_ARRAY_SIZE", + "OHOS_SENSOR_INFO_SENSITIVITY_RANGE", + "OHOS_SENSOR_INFO_PHYSICAL_SIZE", + ]; + availableRequestKeys = [ + "OHOS_CONTROL_AE_MODE", + "OHOS_CONTROL_AE_EXPOSURE_COMPENSATION", + "OHOS_CONTROL_AE_TARGET_FPS_RANGE", + "OHOS_CONTROL_AE_ANTIBANDING_MODE", + "OHOS_CONTROL_AWB_MODE", + "OHOS_CONTROL_AWB_LOCK", + "OHOS_STATISTICS_FACE_DETECT_MODE" + ]; + availableResultKeys = [ + "OHOS_CONTROL_AE_LOCK", + "OHOS_CONTROL_AWB_LOCK", + "OHOS_SENSOR_EXPOSURE_TIME", + "OHOS_JPEG_SIZE", + "OHOS_JPEG_QUALITY", + "OHOS_JPEG_ORIENTATION" + ]; + focalLength = "24.0"; + focusAvailableModes = [ + "OHOS_CAMERA_FOCUS_MODE_MANUAL", + "OHOS_CAMERA_FOCUS_MODE_CONTINUOUS_AUTO", + "OHOS_CAMERA_FOCUS_MODE_AUTO", + "OHOS_CAMERA_FOCUS_MODE_LOCKED" + ]; + exposureAvailableModes = [ + "OHOS_CAMERA_EXPOSURE_MODE_MANUAL", + "OHOS_CAMERA_EXPOSURE_MODE_CONTINUOUS_AUTO", + "OHOS_CAMERA_EXPOSURE_MODE_LOCKED", + "OHOS_CAMERA_EXPOSURE_MODE_AUTO" + ]; + meterAvailableModes = [ + "OHOS_CAMERA_SPOT_METERING", + "OHOS_CAMERA_REGION_METERING", + "OHOS_CAMERA_OVERALL_METERING" + ]; + flashAvailableModes = [ + "OHOS_CAMERA_FLASH_MODE_CLOSE", + "OHOS_CAMERA_FLASH_MODE_OPEN", + "OHOS_CAMERA_FLASH_MODE_AUTO", + "OHOS_CAMERA_FLASH_MODE_ALWAYS_OPEN" + ]; + mirrorSupported = "OHOS_CAMERA_MIRROR_OFF"; + basicAvailableConfigurations = [3, 1280, 960, 4, 1600, 1200]; + extendAvailableConfigurations = [0, 0, 1, 640, 480, 0, -1, 1, 1, 640, 480, 30, -1, 2, 4, 1280, 960, 0, -1, -1]; + sensorOrientationSupported = "90"; + videoStabilizationAvailableModes = [ + "OHOS_CAMERA_VIDEO_STABILIZATION_OFF" + ]; + flashAvailable = "OHOS_CAMERA_FLASH_FALSE"; + afAvailable = [ + "OHOS_CAMERA_AF_MODE_OFF" + ]; + zoomRatioRange = [ + "1.0", + "1.0" + ]; + jpegOrientation= "270"; + jpegQuality= "2"; + } + } + } +} + diff --git a/oriole/hdf_config/uhdf/camera/pipeline_core/config.hcs b/oriole/hdf_config/uhdf/camera/pipeline_core/config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..f887ba5b3426ccb2d1c107d4c9348337c623f2b4 --- /dev/null +++ b/oriole/hdf_config/uhdf/camera/pipeline_core/config.hcs @@ -0,0 +1,1154 @@ +root { + module = "pipeline_specs"; + template pipeline_spec { + name = ""; + template node_spec { + name = ""; + status = ""; + stream_type = ""; + template port_spec { + name = ""; + peer_port_name = ""; + peer_port_node_name = ""; + direction = 0; + width = 0; + height = 0; + format = 0; + usage = 0x10000000000000; + need_allocation = 0; + buffer_count = 0; + } + } + } + normal_preview :: pipeline_spec { + name = "normal_preview"; + v4l2_source :: node_spec { + name = "v4l2_source#0"; + status = "new"; + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#0"; + direction = 1; + width = 0; + height = 0; + format = 0; + } + } + Codec_1 :: node_spec { + name = "Codec#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "v4l2_source#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#0"; + direction = 1; + } + } + sink :: node_spec { + name = "sink#0"; + status = "new"; + stream_type = "preview"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#0"; + direction = 0; + } + } + } + normal_preview_preview :: pipeline_spec { + name = "normal_preview_preview"; + v4l2_source :: node_spec { + name = "v4l2_source#0"; + status = "new"; + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "fork#0"; + direction = 1; + width = 0; + height = 0; + format = 0; + } + } + fork :: node_spec { + name = "fork#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "v4l2_source#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#0"; + direction = 1; + } + out_port_1 :: port_spec { + name = "out1"; + peer_port_name = "in0"; + peer_port_node_name = "sink#1"; + direction = 1; + } + } + Codec :: node_spec { + name = "Codec#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "fork#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#0"; + direction = 1; + } + } + sink_1 :: node_spec { + name = "sink#0"; + status = "new"; + stream_type = "preview"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#0"; + direction = 0; + } + } + sink_2 :: node_spec { + name = "sink#1"; + status = "new"; + stream_type = "preview"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out1"; + peer_port_node_name = "fork#0"; + direction = 0; + } + } + } + normal_preview_preview_snapshot :: pipeline_spec { + name = "normal_preview_preview_snapshot"; + v4l2_source :: node_spec { + name = "v4l2_source#0"; + status = "new"; + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "fork#0"; + direction = 1; + width = 0; + height = 0; + format = 0; + } + } + fork_1 :: node_spec { + name = "fork#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "v4l2_source#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "fork#1"; + direction = 1; + } + out_port_1 :: port_spec { + name = "out1"; + peer_port_name = "in0"; + peer_port_node_name = "ipp#0"; + direction = 1; + } + } + fork_2 :: node_spec { + name = "fork#1"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "fork#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#0"; + direction = 1; + } + out_port_1 :: port_spec { + name = "out1"; + peer_port_name = "in0"; + peer_port_node_name = "sink#1"; + direction = 1; + } + } + ipp :: node_spec { + name = "ipp#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out1"; + peer_port_node_name = "fork#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#1"; + direction = 1; + } + } + Codec_1 :: node_spec { + name = "Codec#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "fork#1"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#0"; + direction = 1; + } + } + Codec_2 :: node_spec { + name = "Codec#1"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "ou0"; + peer_port_node_name = "ipp#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Exif#0"; + direction = 1; + } + } + Exif :: node_spec { + name = "Exif#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#1"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#2"; + direction = 1; + } + } + sink_1 :: node_spec { + name = "sink#0"; + status = "new"; + stream_type = "preview"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#0"; + direction = 0; + } + } + sink_2 :: node_spec { + name = "sink#1"; + status = "new"; + stream_type = "preview"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out1"; + peer_port_node_name = "fork#1"; + direction = 0; + } + } + sink_3 :: node_spec { + name = "sink#2"; + status = "new"; + stream_type = "snapshot"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Exif#0"; + direction = 0; + } + } + } + normal_preview_preview_video :: pipeline_spec { + name = "normal_preview_preview_video"; + v4l2_source :: node_spec { + name = "v4l2_source#0"; + status = "new"; + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "fork#0"; + direction = 1; + width = 0; + height = 0; + format = 0; + } + } + fork_1 :: node_spec { + name = "fork#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "v4l2_source#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "fork#1"; + direction = 1; + } + out_port_1 :: port_spec { + name = "out1"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#1"; + direction = 1; + } + } + fork_2 :: node_spec { + name = "fork#1"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "fork#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#0"; + direction = 1; + } + out_port_1 :: port_spec { + name = "out1"; + peer_port_name = "in0"; + peer_port_node_name = "sink#1"; + direction = 1; + } + } + Codec_1 :: node_spec { + name = "Codec#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "fork#1"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#0"; + direction = 1; + } + } + Codec_2 :: node_spec { + name = "Codec#1"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out1"; + peer_port_node_name = "fork#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#2"; + direction = 1; + } + } + sink_1 :: node_spec { + name = "sink#0"; + status = "new"; + stream_type = "preview"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#0"; + direction = 0; + } + } + sink_2 :: node_spec { + name = "sink#1"; + status = "new"; + stream_type = "preview"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out1"; + peer_port_node_name = "fork#1"; + direction = 0; + } + } + sink_3 :: node_spec { + name = "sink#2"; + status = "new"; + stream_type = "video"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#1"; + direction = 0; + } + } + } + normal_preview_analyze :: pipeline_spec { + name = "normal_preview_analyze"; + v4l2_source :: node_spec { + name = "v4l2_source#0"; + status = "new"; + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "fork#0"; + direction = 1; + width = 0; + height = 0; + format = 0; + } + } + fork :: node_spec { + name = "fork#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "v4l2_source#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#0"; + direction = 1; + } + out_port_1 :: port_spec { + name = "out1"; + peer_port_name = "in0"; + peer_port_node_name = "Face#0"; + direction = 1; + } + } + Codec_1 :: node_spec { + name = "Codec#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "fork#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#0"; + direction = 1; + } + } + Face :: node_spec { + name = "Face#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out1"; + peer_port_node_name = "fork#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#1"; + direction = 1; + } + } + sink_1 :: node_spec { + name = "sink#0"; + status = "new"; + stream_type = "preview"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#0"; + direction = 0; + } + } + sink_2 :: node_spec { + name = "sink#1"; + status = "new"; + stream_type = "analyze"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Face#0"; + direction = 0; + } + } + } + normal_snapshot :: pipeline_spec { + name = "normal_snapshot"; + v4l2_source :: node_spec { + name = "v4l2_source#0"; + status = "new"; + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#0"; + direction = 1; + } + } + sink :: node_spec { + name = "sink#0"; + status = "new"; + stream_type = "snapshot"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "v4l2_source#0"; + direction = 0; + } + } + } + normal_preview_snapshot :: pipeline_spec { + name = "normal_preview_snapshot"; + v4l2_source :: node_spec { + name = "v4l2_source#0"; + status = "new"; + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#0"; + direction = 1; + } + out_port_1 :: port_spec { + name = "out1"; + peer_port_name = "in0"; + peer_port_node_name = "ipp#0"; + direction = 1; + } + } + ipp :: node_spec { + name = "ipp#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out1"; + peer_port_node_name = "v4l2_source#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#1"; + direction = 1; + } + } + Codec_1 :: node_spec { + name = "Codec#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "v4l2_source#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#0"; + direction = 1; + } + } + Codec_2 :: node_spec { + name = "Codec#1"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "ipp#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Exif#0"; + direction = 1; + } + } + Exif_1 :: node_spec { + name = "Exif#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#1"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#1"; + direction = 1; + } + } + sink_1 :: node_spec { + name = "sink#0"; + status = "new"; + stream_type = "preview"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#0"; + direction = 0; + } + } + sink_2 :: node_spec { + name = "sink#1"; + status = "new"; + stream_type = "snapshot"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Exif#0"; + direction = 0; + } + } + } + normal_preview_snapshot_analyze :: pipeline_spec { + name = "normal_preview_snapshot_analyze"; + v4l2_source :: node_spec { + name = "v4l2_source#0"; + status = "new"; + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "fork#0"; + direction = 1; + } + } + fork_1 :: node_spec { + name = "fork#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "v4l2_source#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "fork#1"; + direction = 1; + } + out_port_1 :: port_spec { + name = "out1"; + peer_port_name = "in0"; + peer_port_node_name = "ipp#0"; + direction = 1; + } + } + fork_2 :: node_spec { + name = "fork#1"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "fork#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#0"; + direction = 1; + } + out_port_1 :: port_spec { + name = "out1"; + peer_port_name = "in0"; + peer_port_node_name = "Face#0"; + direction = 1; + } + } + ipp :: node_spec { + name = "ipp#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out1"; + peer_port_node_name = "fork#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#1"; + direction = 1; + } + } + Codec_1 :: node_spec { + name = "Codec#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "fork#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#0"; + direction = 1; + } + } + Codec_2 :: node_spec { + name = "Codec#1"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "ipp#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Exif#0"; + direction = 1; + } + } + Exif_1 :: node_spec { + name = "Exif#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#1"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#1"; + direction = 1; + } + } + Face :: node_spec { + name = "Face#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out1"; + peer_port_node_name = "fork#1"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#2"; + direction = 1; + } + } + sink_1 :: node_spec { + name = "sink#0"; + status = "new"; + stream_type = "preview"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#0"; + direction = 0; + } + } + sink_2 :: node_spec { + name = "sink#1"; + status = "new"; + stream_type = "snapshot"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Exif#0"; + direction = 0; + } + } + sink_3 :: node_spec { + name = "sink#2"; + status = "new"; + stream_type = "analyze"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Face#0"; + direction = 0; + } + } + } + normal_preview_video :: pipeline_spec { + name = "normal_preview_video"; + v4l2_source :: node_spec { + name = "v4l2_source#0"; + status = "new"; + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "fork#0"; + direction = 1; + } + } + fork :: node_spec { + name = "fork#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "v4l2_source#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#0"; + direction = 1; + } + out_port_1 :: port_spec { + name = "out1"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#1"; + direction = 1; + } + } + Codec_1 :: node_spec { + name = "Codec#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "fork#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#0"; + direction = 1; + } + } + Codec_2 :: node_spec { + name = "Codec#1"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out1"; + peer_port_node_name = "fork#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#1"; + direction = 1; + } + } + sink_1 :: node_spec { + name = "sink#0"; + status = "new"; + stream_type = "preview"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#0"; + direction = 0; + } + } + sink_2 :: node_spec { + name = "sink#1"; + status = "new"; + stream_type = "video"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#1"; + direction = 0; + } + } + } + normal_preview_video_snapshot :: pipeline_spec { + name = "normal_preview_video_snapshot"; + v4l2_source :: node_spec { + name = "v4l2_source#0"; + status = "new"; + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "fork#0"; + direction = 1; + width = 0; + height = 0; + format = 0; + } + } + fork_1 :: node_spec { + name = "fork#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "v4l2_source#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "fork#1"; + direction = 1; + } + out_port_1 :: port_spec { + name = "out1"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#2"; + direction = 1; + } + } + fork_2 :: node_spec { + name = "fork#1"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "fork#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#0"; + direction = 1; + } + out_port_1 :: port_spec { + name = "out1"; + peer_port_name = "in0"; + peer_port_node_name = "ipp#0"; + direction = 1; + } + } + ipp :: node_spec { + name = "ipp#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out1"; + peer_port_node_name = "fork#1"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Codec#1"; + direction = 1; + } + } + Codec_1 :: node_spec { + name = "Codec#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "fork#1"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#0"; + direction = 1; + } + } + Codec_2 :: node_spec { + name = "Codec#1"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "ipp#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "Exif#0"; + direction = 1; + } + } + Codec_3 :: node_spec { + name = "Codec#2"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out1"; + peer_port_node_name = "fork#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#2"; + direction = 1; + } + } + Exif :: node_spec { + name = "Exif#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#1"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#1"; + direction = 1; + } + } + sink_1 :: node_spec { + name = "sink#0"; + status = "new"; + stream_type = "preview"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#0"; + direction = 0; + } + } + sink_2 :: node_spec { + name = "sink#1"; + status = "new"; + stream_type = "snapshot"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Exif#0"; + direction = 0; + } + } + sink_3 :: node_spec { + name = "sink#2"; + status = "new"; + stream_type = "video"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "Codec#2"; + direction = 0; + } + } + } + dual_privew :: pipeline_spec { + name = "dual_preview"; + uvc :: node_spec { + name = "uvc#0"; + status = "new"; + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in1"; + peer_port_node_name = "merge#0"; + direction = 1; + width = 0; + height = 0; + format = 0; + need_allocation = 1; + buffer_count = 8; + } + } + v4l2_source :: node_spec { + name = "v4l2_source#0"; + status = "new"; + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "merge#0"; + direction = 1; + } + } + merge :: node_spec { + name = "merge#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "v4l2_source#0"; + direction = 0; + } + in_port_1 :: port_spec { + name = "in1"; + peer_port_name = "out0"; + peer_port_node_name = "uvc#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "ipp#0"; + direction = 1; + } + } + ipp :: node_spec { + name = "ipp#0"; + status = "new"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "merge#0"; + direction = 0; + } + out_port_0 :: port_spec { + name = "out0"; + peer_port_name = "in0"; + peer_port_node_name = "sink#0"; + direction = 1; + } + } + sink :: node_spec { + name = "sink#0"; + status = "new"; + stream_type = "preview"; + in_port_0 :: port_spec { + name = "in0"; + peer_port_name = "out0"; + peer_port_node_name = "ipp#0"; + direction = 0; + } + } + } +} diff --git a/oriole/hdf_config/uhdf/camera/pipeline_core/ipp_algo_config.hcs b/oriole/hdf_config/uhdf/camera/pipeline_core/ipp_algo_config.hcs new file mode 100644 index 0000000000000000000000000000000000000000..bb076a6cdbde0fc0f3fe48d4b3106e9c3985dd5d --- /dev/null +++ b/oriole/hdf_config/uhdf/camera/pipeline_core/ipp_algo_config.hcs @@ -0,0 +1,11 @@ +root { + module="sample"; + ipp_algo_config { + algo1 { + name = "example"; + description = "example algorithm"; + path = "libcamera_ipp_algo_example.z.so"; + mode = "IPP_ALGO_MODE_NORMAL"; + } + } +} diff --git a/oriole/hdf_config/uhdf/camera/pipeline_core/params.hcs b/oriole/hdf_config/uhdf/camera/pipeline_core/params.hcs new file mode 100644 index 0000000000000000000000000000000000000000..09c4a93ffbb0e591c8722822ff5cdc1ebcd6314d --- /dev/null +++ b/oriole/hdf_config/uhdf/camera/pipeline_core/params.hcs @@ -0,0 +1,35 @@ + root { + module = ""; + template stream_info { + id = 0; + name = ""; + } + template scene_info { + id = 0; + name = ""; + } + preview :: stream_info { + id = 0; + name = "preview"; + } + video :: stream_info { + id = 1; + name = "video"; + } + snapshot :: stream_info { + id = 2; + name = "snapshot"; + } + analyze :: stream_info { + id = 4; + name = "analyze"; + } + normal :: scene_info { + id = 0; + name = "normal"; + } + dual :: scene_info { + id = 1; + name = "dual"; + } +} diff --git a/oriole/hdf_config/uhdf/device_info.hcs b/oriole/hdf_config/uhdf/device_info.hcs new file mode 100644 index 0000000000000000000000000000000000000000..b9973bf226327a2bbc94cc809e9e9e7fb747a775 --- /dev/null +++ b/oriole/hdf_config/uhdf/device_info.hcs @@ -0,0 +1,558 @@ + root { + device_info { + match_attr = "hdf_manager"; + template host { + hostName = ""; + priority = 100; + uid = ""; + gid = [""]; + caps = [""]; + critical = []; + template device { + template deviceNode { + policy = 0; + priority = 100; + preload = 0; + permission = 0664; + moduleName = ""; + serviceName = ""; + deviceMatchAttr = ""; + } + } + } + platform :: host { + hostName = "sample_host"; + priority = 50; + gid = ["sample_host", "uhdf_driver"]; + sample_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 2; + moduleName = "libsample_driver.z.so"; + serviceName = "sample_driver_service"; + } + } + sample1_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 2; + moduleName = "libsample1_driver.z.so"; + serviceName = "sample1_driver_service"; + } + } + } + bluetooth :: host { + hostName = "blue_host"; + priority = 50; + caps = ["NET_ADMIN"]; + bluetooth_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libbluetooth_hci_hdi_driver.z.so"; + serviceName = "hci_interface_service"; + } + } + } + audio_bluetooth :: host { + hostName = "a2dp_host"; + priority = 50; + bluetooth_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 2; + moduleName = "libaudio_bluetooth_hdi_adapter_server.z.so"; + serviceName = "audio_bluetooth_hdi_service"; + } + } + } + usb :: host { + hostName = "usb_host"; + priority = 50; + caps = ["DAC_OVERRIDE"]; + usb_pnp_manager_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 70; + moduleName = "libusb_pnp_manager.z.so"; + serviceName = "usb_pnp_manager"; + } + } + usbfn_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 80; + moduleName = "libusbfn_master.z.so"; + serviceName = "usbfn_master"; + deviceMatchAttr = "usbfn_master_driver"; + } + } + ecm_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 81; + moduleName = "libusbfn_cdcecm.z.so"; + serviceName = "usbfn_cdcecm"; + deviceMatchAttr = "usbfn_cdcecm_driver"; + } + } + acm_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libusbfn_cdcacm.z.so"; + serviceName = "usbfn_cdcacm"; + deviceMatchAttr = "usbfn_cdcacm_driver"; + } + } + usb_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libusb_driver.z.so"; + serviceName = "usb_interface_service"; + } + } + ddk_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libusb_ddk_driver.z.so"; + serviceName = "usb_ddk_service"; + } + } + } + power :: host { + hostName = "power_host"; + priority = 50; + uid = "power_host"; + gid = ["power_host", "system", "log"]; + caps = ["BLOCK_SUSPEND"]; + power_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libpower_driver.z.so"; + serviceName = "power_interface_service"; + } + } + battery_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libbattery_driver.z.so"; + serviceName = "battery_interface_service"; + } + } + thermal_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libthermal_driver.z.so"; + serviceName = "thermal_interface_service"; + } + } + } + wlan :: host { + hostName = "wifi_host"; + priority = 50; + gid = ["wifi_host", "wifi_group"]; + wifi_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libwifi_hdi_c_device.z.so"; + serviceName = "wlan_interface_service"; + } + } + } + audio :: host { + hostName = "audio_host"; + priority = 50; + gid = ["audio_host", "uhdf_driver", "root", "audio"]; + audio_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libhdi_audio_primary_server.z.so"; + serviceName = "audio_hdi_service"; + } + } + audio_usb_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libhdi_audio_usb_server.z.so"; + serviceName = "audio_hdi_usb_service"; + } + } + audio_a2dp_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libhdi_audio_a2dp_server.z.so"; + serviceName = "audio_hdi_a2dp_service"; + } + } + audio_pnp_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 110; + moduleName = "libhdi_audio_pnp_server.z.so"; + serviceName = "audio_hdi_pnp_service"; + } + } + idl_audio_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libaudio_primary_driver.z.so"; + serviceName = "audio_manager_service"; + } + } + effect_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libeffect_model_service.z.so"; + serviceName = "effect_model_service"; + } + } + trigger_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libintell_voice_trigger_driver.z.so"; + serviceName = "intell_voice_trigger_manager_service"; + } + } + } + hdi_server :: host { + hostName = "camera_host"; + priority = 50; + gid = ["camera_host", "uhdf_driver", "vendor_mpp_driver"]; + camera_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libcamera_host_service_1.0.z.so"; + serviceName = "camera_service"; + } + } + display_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 120; + moduleName = "libhdi_media_layer_service.z.so"; + serviceName = "hdi_media_layer_service"; + } + } + } + input_hal :: host { + hostName = "input_user_host"; + priority = 50; + gid = ["input_user_host", "uhdf_driver"]; + input_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 150; + moduleName = "libhdf_input_hotplug.z.so"; + serviceName = "input_service"; + } + } + input_hdi_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libinput_driver.z.so"; + serviceName = "input_interfaces_service"; + } + } + } + + display_composer :: host { + hostName = "composer_host"; + priority = 40; + processPriority = -8; + threadPriority = 1; + caps = ["SYS_NICE"]; + uid = ["composer_host"]; + gid = ["composer_host", "graphics", "vendor_mpp_driver"]; + composer_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 160; + moduleName = "libdisplay_composer_driver_1.0.z.so"; + serviceName = "display_composer_service"; + } + } + } + allocator :: host { + hostName = "allocator_host"; + priority = 40; + allocator_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 160; + moduleName = "liballocator_driver_1.0.z.so"; + serviceName = "allocator_service"; + } + } + } + riladapter :: host { + hostName = "riladapter_host"; + priority = 50; + caps = ["DAC_OVERRIDE", "DAC_READ_SEARCH"]; + riladapter_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libril_driver.z.so"; + serviceName = "ril_service"; + } + } + } + sensor :: host { + hostName = "sensor_host"; + priority = 50; + gid = ["sensor_host", "uhdf_driver"]; + sensor_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libsensor_driver.z.so"; + serviceName = "sensor_interface_service"; + } + } + } + vibrator :: host { + hostName = "vibrator_host"; + priority = 50; + vibrator_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libvibrator_driver.z.so"; + serviceName = "vibrator_interface_service"; + } + } + } + light :: host { + hostName = "light_host"; + priority = 50; + light_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "liblight_driver.z.so"; + serviceName = "light_interface_service"; + } + } + } + + codec :: host { + hostName = "codec_host"; + priority = 50; + uid = "root"; + gid = ["root", "codec_host", "uhdf_driver", "vendor_mpp_driver"]; + codec_omx_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libcodec_hdi_omx_server.z.so"; + serviceName = "codec_hdi_omx_service"; + deviceMatchAttr = "codec_component_capabilities"; + } + } + codec_omx_idl_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libcodec_driver.z.so"; + serviceName = "codec_component_manager_service"; + deviceMatchAttr = "codec_component_capabilities"; + } + } + codec_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libcodec_server.z.so"; + serviceName = "codec_hdi_service"; + deviceMatchAttr = "media_codec_capabilities"; + } + } + } + + distributed_camera_host :: host { + hostName = "dcamera_host"; + priority = 50; + distributed_camera_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 2; + moduleName = "libdistributed_camera_host_config.z.so"; + serviceName = "distributed_camera_service"; + } + device1 :: deviceNode { + policy = 2; + priority = 100; + preload = 2; + moduleName = "libdistributed_camera_provider_config.z.so"; + serviceName = "distributed_camera_provider_service"; + } + } + } + + distributed_audio_host :: host { + hostName = "daudio_host"; + priority = 50; + distributed_audio_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 2; + moduleName = "libdaudio_primary_driver.z.so"; + serviceName = "daudio_primary_service"; + } + device1 :: deviceNode { + policy = 2; + priority = 100; + preload = 2; + moduleName = "libdaudio_ext_driver.z.so"; + serviceName = "daudio_ext_service"; + } + } + } + + face_auth :: host { + hostName = "face_auth_host"; + priority = 50; + uid = "useriam"; + gid = ["useriam"]; + face_auth_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 200; + moduleName = "libface_auth_driver.z.so"; + serviceName = "face_auth_interface_service"; + } + } + } + + pin_auth :: host { + hostName = "pin_auth_host"; + priority = 50; + uid = "pin_auth_host"; + gid = ["pin_auth_host"]; + pin_auth_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 200; + moduleName = "libpin_auth_driver.z.so"; + serviceName = "pin_auth_interface_service"; + } + } + } + + user_auth :: host { + hostName = "user_auth_host"; + priority = 50; + uid = "user_auth_host"; + gid = ["user_auth_host"]; + user_auth_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 200; + moduleName = "libuser_auth_driver.z.so"; + serviceName = "user_auth_interface_service"; + } + } + } + + fingerprint_auth :: host { + hostName = "fingerprint_auth_host"; + priority = 50; + uid = "useriam"; + gid = ["useriam"]; + fingerprint_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 200; + moduleName = "libfingerprint_auth_driver.z.so"; + serviceName = "fingerprint_auth_interface_service"; + } + } + } + + location :: host { + hostName = "location_host"; + priority = 50; + uid = "location_host"; + gid = ["location_host"]; + location_gnss_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 2; + moduleName = "liblocation_gnss_hdi_driver.z.so"; + serviceName = "gnss_interface_service"; + } + } + location_agnss_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 2; + moduleName = "liblocation_agnss_hdi_driver.z.so"; + serviceName = "agnss_interface_service"; + } + } + location_geofence_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 2; + moduleName = "liblocation_geofence_hdi_driver.z.so"; + serviceName = "geofence_interface_service"; + } + } + } + partitionslot :: host { + hostName = "partitionslot_host"; + priority = 100; + uid = "useriam"; + gid = ["useriam", "update"]; + caps = ["DAC_OVERRIDE", "DAC_READ_SEARCH"]; + partitionslot_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + preload = 2; + moduleName = "libpartitionslot_driver.z.so"; + serviceName = "partition_slot_service"; + } + } + } + + nnrt :: host { + hostName = "nnrt_host"; + priority = 50; + uid = ""; + gid = ""; + caps = ["DAC_OVERRIDE", "DAC_READ_SEARCH"]; + nnrt_device :: device { + device0 :: deviceNode { + policy = 2; + priority = 100; + moduleName = "libnnrt_driver.z.so"; + serviceName = "nnrt_device_service"; + } + } + } + } +} diff --git a/oriole/hdf_config/uhdf/hdf.hcs b/oriole/hdf_config/uhdf/hdf.hcs new file mode 100644 index 0000000000000000000000000000000000000000..89097af5195e57b19e928ea69d3eaede09add527 --- /dev/null +++ b/oriole/hdf_config/uhdf/hdf.hcs @@ -0,0 +1,9 @@ +#include "device_info.hcs" +#include "usb_pnp_device.hcs" +#include "usb_ecm_acm.hcs" +#include "media_codec/codec_component_capabilities.hcs" +#include "media_codec/media_codec_capabilities.hcs" + +root { + module = "default"; +} diff --git a/oriole/hdf_config/uhdf/media_codec/codec_adapter_capabilities.hcs b/oriole/hdf_config/uhdf/media_codec/codec_adapter_capabilities.hcs new file mode 100644 index 0000000000000000000000000000000000000000..5196992c8d03a644f4bcf1dbb070b915714b2d58 --- /dev/null +++ b/oriole/hdf_config/uhdf/media_codec/codec_adapter_capabilities.hcs @@ -0,0 +1,386 @@ +root { + module = "master"; + codec_adapter_config { + match_attr = "codec_adapter_capabilities"; + use_openmax = false; + // capsMask: 0x01, Adaptive playback; 0x02, Secure playback; 0x04, Tunnel playback. + // allocateMask: 0x01, Input buffer allocated within the Codec module; + // allocateMask: 0x02, Input buffer allocated by an external user; + // allocateMask: 0x04, Output buffer allocated within the Codec module; + // allocateMask: 0x08, Output buffer allocated by an external user. + + VideoHwEncoders { + /* node name explaination -- HDF_video_hw_enc_avc_rk: + ** + ** HDF____________video__________________hw____________________enc____________avc_______rk + ** | | | | | | + ** HDF or OMX video or audio hardware or software encoder or decoder mime vendor + */ + HDF_video_hw_enc_avc_rk { + role = 1; + type = 1; + name = "rk.video_encoder.avc"; + supportProfiles = [1, 32768, 2, 32768, 8, 32768]; + maxInst = 4; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + minBitRate = 1; + maxBitRate = 40000000; + bufferSize = 40960; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 16; + heightAlignment = 8; + allocateMask = [0x01, 0x04, 0x08]; + minInputBufferNum = 1; + maxInputBufferNum = 20; + minOutputBufferNum = 1; + maxOutputBufferNum = 40; + minBlockCount = 0xFFFFFFFF; + maxBlockCount = 0xFFFFFFFF; + minBlocksPerSecond = 0xFFFFFFFF; + maxBlocksPerSecond = 0xFFFFFFFF; + blockSizeWidth = 0xFFFFFFFF; + blockSizeHeight = 0xFFFFFFFF; + supportPixelFmts = [28, 24, 30, 22, 7, 3, 14, 13, 20, 26, 27, 12]; + measuredFrameRate = [320, 240, 165, 165, 720, 480, 149, 149, 1280, 720, 73, 73, 1920, 1080, 18, 18]; + bitRateMode = [1, 2]; + minFrameRate = 0; + maxFrameRate = 0; + inputBufferCount = 4; + inputBufferSize = 614400; + outputBufferCount = 4; + outputBufferSize = 40960; + } + } + VideoHwDecoders { + HDF_video_hw_dec_avc_rk { + role = 1; + type = 0; + name = "rk.video_decoder.avc"; + supportProfiles = [1, 32768, 2, 32768, 8, 32768]; + maxInst = 6; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + minBitRate = 1; + maxBitRate = 10000000; + bufferSize = 40960; + minWidth = 176; + minHeight = 144; + maxWidth = 4096; + maxHeight = 2160; + widthAlignment = 8; + heightAlignment = 8; + allocateMask = [0x01, 0x04, 0x08]; + minInputBufferNum = 1; + maxInputBufferNum = 20; + minOutputBufferNum = 1; + maxOutputBufferNum = 40; + minBlockCount = 0xFFFFFFFF; + maxBlockCount = 0xFFFFFFFF; + minBlocksPerSecond = 1; + maxBlocksPerSecond = 244800; + blockSizeWidth = 16; + blockSizeHeight = 16; + supportPixelFmts = [24]; + measuredFrameRate = [320, 240, 617, 617, 720, 480, 559, 559, 1280, 720, 276, 276, 1920, 1080, 164, 164, 3840, 2160, 30, 30]; + bitRateMode = []; + minFrameRate = 0; + maxFrameRate = 0; + inputBufferCount = 4; + inputBufferSize = 409600; + outputBufferCount = 10; + outputBufferSize = 614400; + } + HDF_video_hw_dec_mpeg2_rk { + role = 0xFFFFFFFF; + type = 0; + name = "rk.video_decoder.m2v"; + supportProfiles = [0, 3, 1, 3]; + maxInst = 6; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + minBitRate = 1; + maxBitRate = 10000000; + bufferSize = 40960; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 8; + heightAlignment = 8; + allocateMask = [0x01, 0x04, 0x08]; + minInputBufferNum = 1; + maxInputBufferNum = 20; + minOutputBufferNum = 1; + maxOutputBufferNum = 40; + minBlockCount = 0xFFFFFFFF; + maxBlockCount = 0xFFFFFFFF; + minBlocksPerSecond = 1; + maxBlocksPerSecond = 244800; + blockSizeWidth = 16; + blockSizeHeight = 8; + supportPixelFmts = [24]; + measuredFrameRate = []; + bitRateMode = []; + minFrameRate = 0; + maxFrameRate = 0; + inputBufferCount = 4; + inputBufferSize = 4096; + outputBufferCount = 10; + outputBufferSize = 614400; + } + HDF_video_hw_dec_v8p_rk { + role = 0xFFFFFFFF; + type = 0; + name = "rk.video_decoder.vp8"; + supportProfiles = []; + maxInst = 6; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + minBitRate = 1; + maxBitRate = 10000000; + bufferSize = 40960; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 8; + heightAlignment = 8; + allocateMask = [0x01, 0x04, 0x08]; + minInputBufferNum = 1; + maxInputBufferNum = 20; + minOutputBufferNum = 1; + maxOutputBufferNum = 40; + minBlockCount = 0xFFFFFFFF; + maxBlockCount = 0xFFFFFFFF; + minBlocksPerSecond = 1; + maxBlocksPerSecond = 244800; + blockSizeWidth = 16; + blockSizeHeight = 16; + supportPixelFmts = [24]; + measuredFrameRate = [320, 180, 500, 500, 640, 360, 387, 387, 1280, 720, 112, 112, 1920, 1080, 77, 77]; + bitRateMode = []; + minFrameRate = 0; + maxFrameRate = 0; + inputBufferCount = 4; + inputBufferSize = 4096; + outputBufferCount = 10; + outputBufferSize = 614400; + } + HDF_video_hw_dec_h263_rk { + role = 0xFFFFFFFF; + type = 0; + name = "rk.video_decoder.h263"; + supportProfiles = [1, 1, 1, 2, 1, 4, 1, 16, 8, 1, 8, 2, 8, 4, 8, 16]; + maxInst = 6; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + minBitRate = 1; + maxBitRate = 10000000; + bufferSize = 40960; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 8; + heightAlignment = 8; + allocateMask = [0x01, 0x04, 0x08]; + minInputBufferNum = 1; + maxInputBufferNum = 20; + minOutputBufferNum = 1; + maxOutputBufferNum = 40; + minBlockCount = 0xFFFFFFFF; + maxBlockCount = 0xFFFFFFFF; + minBlocksPerSecond = 1; + maxBlocksPerSecond = 244800; + blockSizeWidth = 16; + blockSizeHeight = 16; + supportPixelFmts = [24]; + measuredFrameRate = [176, 144, 600, 600, 352, 288, 600, 600]; + bitRateMode = []; + minFrameRate = 0; + maxFrameRate = 0; + inputBufferCount = 4; + inputBufferSize = 4096; + outputBufferCount = 10; + outputBufferSize = 614400; + } + HDF_video_hw_dec_m4v_rk { + role = 0xFFFFFFFF; + type = 0; + name = "rk.video_decoder.m4v"; + supportProfiles = [1, 1, 1, 2, 1, 4, 1, 8, 1, 16]; + maxInst = 6; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + minBitRate = 1; + maxBitRate = 10000000; + bufferSize = 40960; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 8; + heightAlignment = 8; + allocateMask = [0x01, 0x04, 0x08]; + minInputBufferNum = 1; + maxInputBufferNum = 20; + minOutputBufferNum = 1; + maxOutputBufferNum = 40; + minBlockCount = 0xFFFFFFFF; + maxBlockCount = 0xFFFFFFFF; + minBlocksPerSecond = 1; + maxBlocksPerSecond = 244800; + blockSizeWidth = 16; + blockSizeHeight = 16; + supportPixelFmts = [24]; + measuredFrameRate = [176, 144, 600, 600]; + bitRateMode = []; + minFrameRate = 0; + maxFrameRate = 0; + inputBufferCount = 4; + inputBufferSize = 4096; + outputBufferCount = 10; + outputBufferSize = 614400; + } + HDF_video_hw_dec_flv_rk { + role = 0xFFFFFFFF; + type = 0; + name = "rk.video_decoder.flv1"; + supportProfiles = []; + maxInst = 6; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + minBitRate = 1; + maxBitRate = 10000000; + bufferSize = 40960; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 8; + heightAlignment = 8; + allocateMask = [0x01, 0x04, 0x08]; + minInputBufferNum = 1; + maxInputBufferNum = 20; + minOutputBufferNum = 1; + maxOutputBufferNum = 40; + minBlockCount = 0xFFFFFFFF; + maxBlockCount = 0xFFFFFFFF; + minBlocksPerSecond = 1; + maxBlocksPerSecond = 244800; + blockSizeWidth = 16; + blockSizeHeight = 16; + supportPixelFmts = [24]; + measuredFrameRate = []; + bitRateMode = []; + minFrameRate = 0; + maxFrameRate = 0; + inputBufferCount = 4; + inputBufferSize = 4096; + outputBufferCount = 10; + outputBufferSize = 614400; + } + HDF_video_hw_dec_mjpeg_rk { + role = 0; + type = 0; + name = "rk.video_decoder.mjpeg"; + supportProfiles = []; + maxInst = 6; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + minBitRate = 1; + maxBitRate = 10000000; + bufferSize = 40960; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 8; + heightAlignment = 8; + allocateMask = [0x01, 0x04, 0x08]; + minInputBufferNum = 1; + maxInputBufferNum = 20; + minOutputBufferNum = 1; + maxOutputBufferNum = 40; + minBlockCount = 0xFFFFFFFF; + maxBlockCount = 0xFFFFFFFF; + minBlocksPerSecond = 1; + maxBlocksPerSecond = 244800; + blockSizeWidth = 16; + blockSizeHeight = 16; + supportPixelFmts = [24]; + measuredFrameRate = []; + bitRateMode = []; + minFrameRate = 0; + maxFrameRate = 0; + inputBufferCount = 4; + inputBufferSize = 4096; + outputBufferCount = 10; + outputBufferSize = 614400; + } + HDF_video_hw_dec_hevc_rk { + role = 2; + type = 0; + name = "rk.video_decoder.hevc"; + supportProfiles = [1, 1, 1, 4, 1, 16, 1, 64, 1, 256, 1, 1024, 1, 4096, 1, 16384, 1, 65536, 2, 65536]; + maxInst = 6; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + minBitRate = 1; + maxBitRate = 160000000; + bufferSize = 40960; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 2; + heightAlignment = 2; + allocateMask = [0x01, 0x04, 0x08]; + minInputBufferNum = 1; + maxInputBufferNum = 20; + minOutputBufferNum = 1; + maxOutputBufferNum = 40; + minBlockCount = 0xFFFFFFFF; + maxBlockCount = 0xFFFFFFFF; + minBlocksPerSecond = 1; + maxBlocksPerSecond = 244800; + blockSizeWidth = 16; + blockSizeHeight = 16; + supportPixelFmts = [24]; + measuredFrameRate = [352, 288, 700, 700, 720, 480, 700, 700, 640, 360, 980, 980, 1280, 720, 600, 600, 1920, 1080, 130, 130, 3840, 2160, 130, 130]; + bitRateMode = []; + minFrameRate = 0; + maxFrameRate = 0; + inputBufferCount = 4; + inputBufferSize = 4096; + outputBufferCount = 10; + outputBufferSize = 614400; + } + } + VideoSwEncoders { + } + VideoSwDecoders { + } + AudioHwEncoders { + } + AudioHwDecoders { + } + AudioSwEncoders { + } + AudioSwDecoders { + } + } +} diff --git a/oriole/hdf_config/uhdf/media_codec/codec_component_capabilities.hcs b/oriole/hdf_config/uhdf/media_codec/codec_component_capabilities.hcs new file mode 100644 index 0000000000000000000000000000000000000000..0de08665c1a557bd499e95b997ca8cb404b2e66e --- /dev/null +++ b/oriole/hdf_config/uhdf/media_codec/codec_component_capabilities.hcs @@ -0,0 +1,64 @@ +root { + module = "master"; + codec_config { + match_attr = "codec_component_capabilities"; + use_openmax = true; + // capsMask: 0x01, Adaptive playback; 0x02, Secure playback; 0x04, Tunnel playback. + // allocateMask: 0x01, Input buffer allocated within the Codec module; + // allocateMask: 0x02, Input buffer allocated by an external user; + // allocateMask: 0x04, Output buffer allocated within the Codec module; + // allocateMask: 0x08, Output buffer allocated by an external user. + + VideoHwEncoders { + /* node name explanation -- HDF_video_hw_enc_avc_rk: + ** + ** HDF____________video__________________hw____________________enc____________avc_______rk + ** | | | | | | + ** HDF or OMX video or audio hardware or software encoder or decoder mime vendor + */ + } + VideoHwDecoders { + OMX_video_hw_dec_avc_sprd { + role = 1; + type = 0; + name = "OMX.sprd.h264.decoder"; + supportProfiles = [1, 32768, 2, 32768, 8, 32768]; + maxInst = 6; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + minBitRate = 1; + maxBitRate = 10000000; + minWidth = 176; + minHeight = 144; + maxWidth = 4096; + maxHeight = 2160; + widthAlignment = 8; + heightAlignment = 8; + minBlockCount = 0xFFFFFFFF; + maxBlockCount = 0xFFFFFFFF; + minBlocksPerSecond = 1; + maxBlocksPerSecond = 244800; + blockSizeWidth = 16; + blockSizeHeight = 16; + supportPixelFmts = [24]; + measuredFrameRate = [320, 240, 617, 617, 720, 480, 559, 559, 1280, 720, 276, 276, 1920, 1080, 164, 164, 3840, 2160, 30, 30]; + bitRateMode = []; + minFrameRate = 0; + maxFrameRate = 0; + } + } + VideoSwEncoders { + } + VideoSwDecoders { + } + AudioHwEncoders { + } + AudioHwDecoders { + } + AudioSwEncoders { + } + AudioSwDecoders { + } + } +} diff --git a/oriole/hdf_config/uhdf/media_codec/media_codec_capabilities.hcs b/oriole/hdf_config/uhdf/media_codec/media_codec_capabilities.hcs new file mode 100644 index 0000000000000000000000000000000000000000..f8ae80c5213bb60fc849f602cc65986fc1d03918 --- /dev/null +++ b/oriole/hdf_config/uhdf/media_codec/media_codec_capabilities.hcs @@ -0,0 +1,260 @@ +root { + module = "master"; + codec_config_hdi_1_0 { + match_attr = "media_codec_capabilities"; + use_openmax = false; + // capsMask: 0x01, Adaptive playback; 0x02, Secure playback; 0x04, Tunnel playback. + // allocateMask: 0x01, Input buffer allocated within the Codec module; + // allocateMask: 0x02, Input buffer allocated by an external user; + // allocateMask: 0x04, Output buffer allocated within the Codec module; + // allocateMask: 0x08, Output buffer allocated by an external user. + + VideoHwEncoders { + /* node name explaination -- HDF_video_hw_enc_avc_rk: + ** + ** HDF____________video__________________hw____________________enc____________avc_______rk + ** | | | | | | + ** HDF or OMX video or audio hardware or software encoder or decoder mime vendor + */ + HDF_video_hw_enc_avc_rk { + mime = 1; + type = 1; + name = "codec.avc.hardware.encoder"; + supportProfiles = [1, 32768, 2, 32768, 8, 32768]; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + allocateMask = [0x010, 0x020]; + minInputBufferNum = 4; + maxInputBufferNum = 20; + minOutputBufferNum = 4; + maxOutputBufferNum = 20; + minBitRate = 1; + maxBitRate = 40000000; + inputBufferSize = 20000000; + outputBufferSize = 20000000; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 16; + heightAlignment = 8; + supportPixelFmts = [28, 24, 30, 22, 7, 3, 14, 13, 20, 26, 27, 12]; + } + } + VideoHwDecoders { + HDF_video_hw_dec_avc_rk { + mime = 1; + type = 0; + name = "codec.avc.hardware.decoder"; + supportProfiles = [1, 32768, 2, 32768, 8, 32768]; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + allocateMask = [0x010, 0x020]; + minInputBufferNum = 4; + maxInputBufferNum = 20; + minOutputBufferNum = 4; + maxOutputBufferNum = 20; + minBitRate = 1; + maxBitRate = 10000000; + inputBufferSize = 20000000; + outputBufferSize = 20000000; + minWidth = 176; + minHeight = 144; + maxWidth = 4096; + maxHeight = 2160; + widthAlignment = 8; + heightAlignment = 8; + supportPixelFmts = [24]; + } + HDF_video_hw_dec_mpeg2_rk { + mime = 65531; + type = 0; + name = "HDF_video_hw_dec_mpeg2_rk"; + supportProfiles = [0, 3, 1, 3]; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + allocateMask = [0x010, 0x020]; + minInputBufferNum = 4; + maxInputBufferNum = 20; + minOutputBufferNum = 4; + maxOutputBufferNum = 20; + minBitRate = 1; + maxBitRate = 10000000; + inputBufferSize = 20000000; + outputBufferSize = 20000000; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 8; + heightAlignment = 8; + supportPixelFmts = [24]; + } + HDF_video_hw_dec_v8p_rk { + mime = 65532; + type = 0; + name = "HDF_video_hw_dec_v8p_rk"; + supportProfiles = []; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + allocateMask = [0x010, 0x020]; + minInputBufferNum = 4; + maxInputBufferNum = 20; + minOutputBufferNum = 4; + maxOutputBufferNum = 20; + minBitRate = 1; + maxBitRate = 10000000; + inputBufferSize = 20000000; + outputBufferSize = 20000000; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 8; + heightAlignment = 8; + supportPixelFmts = [24]; + } + HDF_video_hw_dec_h263_rk { + mime = 65533; + type = 0; + name = "HDF_video_hw_dec_h263_rk"; + supportProfiles = [1, 1, 1, 2, 1, 4, 1, 16, 8, 1, 8, 2, 8, 4, 8, 16]; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + allocateMask = [0x010, 0x020]; + minInputBufferNum = 4; + maxInputBufferNum = 20; + minOutputBufferNum = 4; + maxOutputBufferNum = 20; + minBitRate = 1; + maxBitRate = 10000000; + inputBufferSize = 20000000; + outputBufferSize = 20000000; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 8; + heightAlignment = 8; + supportPixelFmts = [24]; + } + HDF_video_hw_dec_m4v_rk { + mime = 65534; + type = 0; + name = "HDF_video_hw_dec_m4v_rk"; + supportProfiles = [1, 1, 1, 2, 1, 4, 1, 8, 1, 16]; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + allocateMask = [0x010, 0x020]; + minInputBufferNum = 4; + maxInputBufferNum = 20; + minOutputBufferNum = 4; + maxOutputBufferNum = 20; + minBitRate = 1; + maxBitRate = 10000000; + inputBufferSize = 20000000; + outputBufferSize = 20000000; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 8; + heightAlignment = 8; + supportPixelFmts = [24]; + } + HDF_video_hw_dec_flv_rk { + mime = 65535; + type = 0; + name = "HDF_video_hw_dec_flv_rk"; + supportProfiles = []; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + allocateMask = [0x010, 0x020]; + minInputBufferNum = 4; + maxInputBufferNum = 20; + minOutputBufferNum = 4; + maxOutputBufferNum = 20; + minBitRate = 1; + maxBitRate = 10000000; + inputBufferSize = 20000000; + outputBufferSize = 20000000; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 8; + heightAlignment = 8; + supportPixelFmts = [24]; + } + HDF_video_hw_dec_mjpeg_rk { + mime = 0; + type = 0; + name = "HDF_video_hw_dec_mjpeg_rk"; + supportProfiles = []; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + allocateMask = [0x010, 0x020]; + minInputBufferNum = 4; + maxInputBufferNum = 20; + minOutputBufferNum = 4; + maxOutputBufferNum = 20; + minBitRate = 1; + maxBitRate = 10000000; + inputBufferSize = 20000000; + outputBufferSize = 20000000; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 8; + heightAlignment = 8; + supportPixelFmts = [24]; + } + HDF_video_hw_dec_hevc_rk { + mime = 2; + type = 0; + name = "codec.hevc.hardware.decoder"; + supportProfiles = [1, 1, 1, 4, 1, 16, 1, 64, 1, 256, 1, 1024, 1, 4096, 1, 16384, 1, 65536, 2, 65536]; + isSoftwareCodec = false; + processModeMask = []; + capsMask = [0x01]; + allocateMask = [0x010, 0x020]; + minInputBufferNum = 4; + maxInputBufferNum = 20; + minOutputBufferNum = 4; + maxOutputBufferNum = 20; + minBitRate = 1; + maxBitRate = 160000000; + inputBufferSize = 20000000; + outputBufferSize = 20000000; + minWidth = 176; + minHeight = 144; + maxWidth = 1920; + maxHeight = 1088; + widthAlignment = 2; + heightAlignment = 2; + supportPixelFmts = [24]; + } + } + VideoSwEncoders { + } + VideoSwDecoders { + } + AudioHwEncoders { + } + AudioHwDecoders { + } + AudioSwEncoders { + } + AudioSwDecoders { + } + } +} diff --git a/oriole/hdf_config/uhdf/usb_ecm_acm.hcs b/oriole/hdf_config/uhdf/usb_ecm_acm.hcs new file mode 100644 index 0000000000000000000000000000000000000000..b2ea683f2d1109af655880328544396ef982b7ee --- /dev/null +++ b/oriole/hdf_config/uhdf/usb_ecm_acm.hcs @@ -0,0 +1,421 @@ +root { + module = "master"; + master_config { + match_attr = "usbfn_master_driver"; + use_hcs = 1; + udc_name = "fcc00000.dwc3"; + usb_dev_desc = "UsbDeviceDescriptor"; + usb_dev_string = "UsbDeviceStrings"; + usb_configuration = "UsbConfigs"; + UsbDeviceDescriptor { + bLength = 18; + bDescriptorType = 0x01; + bcdUSB = 0x0200; + bDeviceClass = 0; + bDeviceSubClass = 0; + bDeviceProtocol = 0; + bMaxPacketSize0 = 0x40; + idVendor = 0x2207; + idProduct = 0x0018; + bcdDevice = 0x0223; + manufacturer = 0; + product = 1; + serialnumber = 2; + numConfigurations = 1; + } + UsbDeviceStrings { + stringTabList = ["string_1"]; + string_1 { + language = 0x0409; + stringList = ["str_1", "str_2","str_3", "str_4"]; + str_1 { + id = 0; + str = "HISILICON"; + } + str_2 { + id = 1; + str = "HDC Device"; + } + str_3 { + id = 2; + str = "0123456789POPLAR"; + } + str_4 { + id = 3; + str = "hdc"; + } + } + } + UsbConfigs { + configList = ["config_1"]; + config_1 { + configurationValue = 1; + iConfiguration = 3; + attributes = 0xC0; + maxPower = 500; + functionList = ["func_ecm", "func_acm"]; + func_ecm { + funcName = "f_generic.e"; + stringTabList = ["fnString_1"]; + fnString_1 { + language = 0x0409; + stringList = ["str_1", "str_2", "str_3", "str_4"]; + str_1 { + id = 0; + str = "CDC Ethernet Control Model (ECM)"; + } + str_2 { + id = 1; + str = "0ac75ae91c79"; + } + str_3 { + id = 2; + str = "CDC Ethernet Data"; + } + str_4 { + id = 3; + str = "CDC ECM"; + } + } + fsDescList = ["assoc_interface", "ControlInterface", "cdc_header", + "cdc_union", "cdc_ether", "FsNotify_endpoint", "DataNopInterface", + "DataInterface", "FsIn_endpoint", "FsOut_endpoint"]; + assoc_interface { + bLength = 0x08; + bDescriptorType = 0x0B; + bFirstInterface = 0x00; + bInterfaceCount = 0x02; + bFunctionClass = 0x02; + bFunctionSubClass = 0x06; + bFunctionProtocol = 0x00; + iFunction = 0x04; + } + ControlInterface { + bLength = 0x09; + bDescriptorType = 0x04; + bInterfaceNumber = 0x00; + bAlternateSetting = 0x00; + bNumEndpoints = 0x01; + bInterfaceClass = 0x02; + bInterfaceSubClass = 0x06; + bInterfaceProtocol = 0x00; + iInterface = 0x1; + } + cdc_header { + bLength = 0x05; + bDescriptorType = 0x24; + desc_data = [0x05, 0x24, 0x00, 0x10, 0x01]; + } + cdc_union { + bLength = 0x05; + bDescriptorType = 0x24; + desc_data = [0x05, 0x24, 0x06, 0x00, 0x01]; + } + cdc_ether { + bLength = 0x0D; + bDescriptorType = 0x24; + desc_data = [0x0D, 0x24, 0x0F, 0x06, 0x00, 0x00, 0x00, 0x00, + 0xEA, 0x05, 0x00, 0x00, 0x00]; + } + DataNopInterface { + bLength = 0x09; + bDescriptorType = 0x04; + bInterfaceNumber = 0x01; + bAlternateSetting = 0x00; + bNumEndpoints = 0x00; + bInterfaceClass = 0x0A; + bInterfaceSubClass = 0x00; + bInterfaceProtocol = 0x06; + iInterface = 0x00; + } + DataInterface { + bLength = 0x09; + bDescriptorType = 0x04; + bInterfaceNumber = 0x01; + bAlternateSetting = 0x01; + bNumEndpoints = 0x02; + bInterfaceClass = 0x0A; + bInterfaceSubClass = 0x00; + bInterfaceProtocol = 0x06; + iInterface = 0x03; + } + FsNotify_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x81; + bmAttributes = 0x03; + wMaxPacketSize = 16; + bInterval = 32; + } + FsIn_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x82; + bmAttributes = 0x02; + wMaxPacketSize = 0; + bInterval = 0; + } + FsOut_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x3; + bmAttributes = 0x02; + wMaxPacketSize = 0; + bInterval = 0; + } + hsDescList = ["assoc_interface", "ControlInterface", "cdc_header", + "cdc_union", "cdc_ether", "HsNotify_endpoint", "DataNopInterface", + "DataInterface", "HsIn_endpoint", "HsOut_endpoint"]; + HsNotify_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x81; + bmAttributes = 0x03; + wMaxPacketSize = 16; + bInterval = 9; + } + HsIn_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x82; + bmAttributes = 0x02; + wMaxPacketSize = 512; + bInterval = 0; + } + HsOut_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x3; + bmAttributes = 0x02; + wMaxPacketSize = 512; + bInterval = 0; + } + ssDescList = ["assoc_interface", "ControlInterface", "cdc_header", + "cdc_union", "cdc_ether", "SsNotify_endpoint", "ss_ep_comp_0", + "DataNopInterface", "DataInterface", "SsIn_endpoint", + "ss_ep_comp", "SsOut_endpoint", "ss_ep_comp"]; + SsNotify_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x81; + bmAttributes = 0x03; + wMaxPacketSize = 16; + bInterval = 9; + } + ss_ep_comp_0 { + bLength = 0x06; + bDescriptorType = 0x30; + bMaxBurst = 0x00; + bmAttributes = 0x00; + wBytesPerInterval = 16; + } + ss_ep_comp { + bLength = 0x06; + bDescriptorType = 0x30; + bMaxBurst = 0x00; + bmAttributes = 0x00; + wBytesPerInterval = 0x00; + } + SsIn_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x82; + bmAttributes = 0x02; + wMaxPacketSize = 1024; + bInterval = 0; + } + SsOut_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x3; + bmAttributes = 0x02; + wMaxPacketSize = 1024; + bInterval = 0; + } + } + func_acm { + funcName = "f_generic.a"; + stringTabList = ["fnString_1"]; + fnString_1 { + language = 0x0409; + stringList = ["str_1", "str_2", "str_3"]; + str_1 { + id = 0; + str = "CDC Abstract Control Model (ACM)"; + } + str_2 { + id = 1; + str = "CDC ACM Data"; + } + str_3 { + id = 2; + str = "CDC Serial"; + } + } + fsDescList = ["assoc_interface", "ControlInterface", "cdc_header", + "cdc_call_mgmt", "cdc_acm", "cdc_union", "FsNotify_endpoint", + "DataInterface", "FsIn_endpoint", "FsOut_endpoint"]; + assoc_interface { + bLength = 0x08; + bDescriptorType = 0x0B; + bFirstInterface = 0x02; + bInterfaceCount = 0x02; + bFunctionClass = 0x02; + bFunctionSubClass = 0x02; + bFunctionProtocol = 0x01; + iFunction = 0x03; + } + ControlInterface { + bLength = 0x09; + bDescriptorType = 0x04; + bInterfaceNumber = 0x02; + bAlternateSetting = 0x00; + bNumEndpoints = 0x01; + bInterfaceClass = 0x02; + bInterfaceSubClass = 0x02; + bInterfaceProtocol = 0x01; + iInterface = 0x01; + } + cdc_header { + bLength = 0x05; + bDescriptorType = 0x24; + desc_data = [0x05, 0x24, 0x00, 0x10, 0x01]; + } + cdc_call_mgmt { + bLength = 0x05; + bDescriptorType = 0x24; + desc_data = [0x05, 0x24, 0x01, 0x00, 0x01]; + } + cdc_acm { + bLength = 0x04; + bDescriptorType = 0x24; + desc_data = [0x04, 0x24, 0x02, 0x02]; + } + cdc_union { + bLength = 0x05; + bDescriptorType = 0x24; + desc_data = [0x05, 0x24, 0x06, 0x02, 0x03]; + } + FsNotify_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x81; + bmAttributes = 0x03; + wMaxPacketSize = 10; + bInterval = 32; + } + DataInterface { + bLength = 0x09; + bDescriptorType = 0x04; + bInterfaceNumber = 0x03; + bAlternateSetting = 0x00; + bNumEndpoints = 0x02; + bInterfaceClass = 0x0A; + bInterfaceSubClass = 0x00; + bInterfaceProtocol = 0x02; + iInterface = 0x02; + } + FsIn_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x82; + bmAttributes = 0x02; + wMaxPacketSize = 0; + bInterval = 0; + } + FsOut_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x3; + bmAttributes = 0x02; + wMaxPacketSize = 0; + bInterval = 0; + } + hsDescList = ["assoc_interface", "ControlInterface", "cdc_header", + "cdc_call_mgmt", "cdc_acm", "cdc_union", "HsNotify_endpoint", + "DataInterface", "HsIn_endpoint", "HsOut_endpoint"]; + HsNotify_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x81; + bmAttributes = 0x03; + wMaxPacketSize = 10; + bInterval = 9; + } + HsIn_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x82; + bmAttributes = 0x02; + wMaxPacketSize = 512; + bInterval = 0; + } + HsOut_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x3; + bmAttributes = 0x02; + wMaxPacketSize = 512; + bInterval = 0; + } + ssDescList = ["assoc_interface", "ControlInterface", "cdc_header", + "cdc_call_mgmt", "cdc_acm", "cdc_union", "HsNotify_endpoint", + "ss_ep_comp", "DataInterface", "SsIn_endpoint", + "ss_ep_comp","SsOut_endpoint","ss_ep_comp"]; + ss_ep_comp { + bLength = 0x06; + bDescriptorType = 0x30; + bMaxBurst = 0x00; + bmAttributes = 0x00; + wBytesPerInterval = 0x00; + } + SsIn_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x82; + bmAttributes = 0x02; + wMaxPacketSize = 1024; + bInterval = 0; + } + SsOut_endpoint { + bLength = 0x07; + bDescriptorType = 0x05; + bEndpointAddress = 0x3; + bmAttributes = 0x02; + wMaxPacketSize = 1024; + bInterval = 0; + } + } + } + } + custom_prop { + propTable = ["propList_1", "propList_2"]; + propList_1 { + configNum = 1; + interfaceNum = 2; + propList = ["prop_1", "prop_2"]; + prop_1 { + name = "testx"; + value = "xxxxxx"; + } + prop_2 { + name = "testy"; + value = "yyyyyy"; + } + } + propList_2 { + configNum = 1; + interfaceNum = 3; + propList = ["prop_1", "prop_2"]; + prop_1 { + name = "testm"; + value = "mmmmm"; + } + prop_2 { + name = "testn"; + value = "nnnnn"; + } + } + } + } +} diff --git a/oriole/hdf_config/uhdf/usb_pnp_device.hcs b/oriole/hdf_config/uhdf/usb_pnp_device.hcs new file mode 100644 index 0000000000000000000000000000000000000000..e00e638e29b696b956776bb748266b4100decfbe --- /dev/null +++ b/oriole/hdf_config/uhdf/usb_pnp_device.hcs @@ -0,0 +1,106 @@ +root { + module = "usb_pnp_device"; + usb_pnp_config { + match_attr = "usb_pnp_match"; + usb_pnp_device_id = "UsbPnpDeviceId"; + UsbPnpDeviceId { + idTableList = [ + "sample_table", + "host_acm_table", + "host_acm_rawapi_table", + "host_ecm_table", + "host_acm_test_table" + ]; + sample_table { + moduleName = "usb_pnp_sample_driver"; + serviceName = "usb_pnp_sample_service"; + deviceMatchAttr = "usb_pnp_sample_matchAttr"; + length = 19; + matchFlag = 0x0000; + vendorId = 0xFFF0; + productId = 0xFFF0; + bcdDeviceLow = 0x0000; + bcdDeviceHigh = 0x0000; + deviceClass = 0; + deviceSubClass = 0; + deviceProtocol = 0; + interfaceClass = [0]; + interfaceSubClass = [0]; + interfaceProtocol = [0]; + interfaceNumber = [0, 1]; + } + host_acm_table { + moduleName = "usbhost_acm"; + serviceName = "usbhost_acm_pnp_service"; + deviceMatchAttr = "usbhost_acm_pnp_matchAttr"; + length = 21; + matchFlag = 0x0300; + vendorId = 0x2207; + productId = 0x0018; + bcdDeviceLow = 0x0000; + bcdDeviceHigh = 0x0000; + deviceClass = 0; + deviceSubClass = 0; + deviceProtocol = 0; + interfaceClass = [0]; + interfaceSubClass = [2, 0]; + interfaceProtocol = [1, 2]; + interfaceNumber = [2, 3]; + } + host_acm_rawapi_table { + moduleName = "usbhost_acm_rawapi"; + serviceName = "usbhost_acm_rawapi_service"; + deviceMatchAttr = "usbhost_acm_rawapi_matchAttr"; + length = 21; + matchFlag = 0x0300; + vendorId = 0x2207; + productId = 0x0018; + bcdDeviceLow = 0x0000; + bcdDeviceHigh = 0x0000; + deviceClass = 0; + deviceSubClass = 0; + deviceProtocol = 0; + interfaceClass = [0]; + interfaceSubClass = [2, 0]; + interfaceProtocol = [1, 2]; + interfaceNumber = [2, 3]; + } + host_ecm_table { + moduleName = "usbhost_ecm"; + serviceName = "usbhost_ecm_pnp_service"; + deviceMatchAttr = "usbhost_ecm_pnp_matchAttr"; + length = 21; + matchFlag = 0x0300; + vendorId = 0x2207; + productId = 0x0018; + bcdDeviceLow = 0x0000; + bcdDeviceHigh = 0x0000; + deviceClass = 0; + deviceSubClass = 0; + deviceProtocol = 0; + interfaceClass = [0]; + interfaceSubClass = [6, 0]; + interfaceProtocol = [0, 6]; + interfaceNumber = [0, 1]; + } + host_acm_test_table { + moduleName = "usbhost_acm"; + serviceName = "usbhost_acm_pnp_test_service"; + deviceMatchAttr = "usbhost_acm_pnp_test_matchAttr"; + length = 18; + matchFlag = 0x0000; + vendorId = 0x05E3; + productId = 0x0749; + bcdDeviceLow = 0x0000; + bcdDeviceHigh = 0x0000; + deviceClass = 0; + deviceSubClass = 0; + deviceProtocol = 0; + interfaceClass = [0]; + interfaceSubClass = [0]; + interfaceProtocol = [0]; + interfaceNumber = [0]; + } + } + } +} diff --git a/oriole/image_conf/BUILD.gn b/oriole/image_conf/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..ef4d8615bb87f0eb8a0ec43e81928a8a9e1e79e6 --- /dev/null +++ b/oriole/image_conf/BUILD.gn @@ -0,0 +1,39 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# 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. + +import("//build/ohos.gni") + +ohos_copy("system_image_conf_for_asan") { + sources = [ "system_image_conf.txt" ] + outputs = [ "${product_output_dir}/imagesconf/{{source_file_part}}" ] +} + +ohos_copy("ramdisk_image_conf_for_asan") { + sources = [ "ramdisk_image_conf.txt" ] + outputs = [ "${product_output_dir}/imagesconf/{{source_file_part}}" ] +} + +ohos_copy("updater_ramdisk_image_conf_for_asan") { + sources = [ "updater_ramdisk_image_conf.txt" ] + outputs = [ "${product_output_dir}/imagesconf/{{source_file_part}}" ] +} + +group("custom_image_conf") { + if (is_asan) { + deps = [ + ":ramdisk_image_conf_for_asan", + ":system_image_conf_for_asan", + ":updater_ramdisk_image_conf_for_asan", + ] + } +} diff --git a/oriole/image_conf/ramdisk_image_conf.txt b/oriole/image_conf/ramdisk_image_conf.txt new file mode 100644 index 0000000000000000000000000000000000000000..8b45b892de2a82cdcc1259ca5a1f2c6a6c82a9d5 --- /dev/null +++ b/oriole/image_conf/ramdisk_image_conf.txt @@ -0,0 +1,4 @@ +/ramdisk +14194304 +--fs_type=cpio +--dac_config ../../build/ohos/images/mkimage/dac.txt diff --git a/oriole/image_conf/system_image_conf.txt b/oriole/image_conf/system_image_conf.txt new file mode 100644 index 0000000000000000000000000000000000000000..7a4852f4fe5ad71398bc50008fc754a234153f71 --- /dev/null +++ b/oriole/image_conf/system_image_conf.txt @@ -0,0 +1,5 @@ +/ +2097152000 +--fs_type=ext4 +--dac_config ../../build/ohos/images/mkimage/dac.txt +--file_context obj/base/security/selinux/file_contexts.bin diff --git a/oriole/image_conf/updater_ramdisk_image_conf.txt b/oriole/image_conf/updater_ramdisk_image_conf.txt new file mode 100644 index 0000000000000000000000000000000000000000..5e04bacb75763d9da0dfd66525ecff87e15a3aca --- /dev/null +++ b/oriole/image_conf/updater_ramdisk_image_conf.txt @@ -0,0 +1,5 @@ +/updater +67108864 +--fs_type=cpio +--dac_config ../../build/ohos/images/mkimage/dac.txt +--file_context obj/base/security/selinux/file_contexts.bin diff --git a/oriole/patch.yml b/oriole/patch.yml new file mode 100644 index 0000000000000000000000000000000000000000..27fc13d1dbe8e6dea8000e4a14dd8647a2e30505 --- /dev/null +++ b/oriole/patch.yml @@ -0,0 +1,2 @@ +build: + - vendor/hardmony/oriole/patches/build/0001-add-soc_platform.patch \ No newline at end of file diff --git a/oriole/patches/build/0001-add-soc_platform.patch b/oriole/patches/build/0001-add-soc_platform.patch new file mode 100644 index 0000000000000000000000000000000000000000..8189fc2acfde5b033b97d81d88061a1d71993881 --- /dev/null +++ b/oriole/patches/build/0001-add-soc_platform.patch @@ -0,0 +1,39 @@ +From 4bbf696ce47252573fc7d7168dcd415f7175c3e1 Mon Sep 17 00:00:00 2001 +From: sunchanglong +Date: Mon, 15 Jul 2024 14:06:58 +0800 +Subject: [PATCH] add soc_platform + +Change-Id: I5aee1c8511e0386d804090b6e09f681d0c392eed +--- + ohos/images/build_image.py | 3 ++- + ohos/images/mkimage/dac.txt | 3 +++ + 2 files changed, 5 insertions(+), 1 deletion(-) + +diff --git a/ohos/images/build_image.py b/ohos/images/build_image.py +index 0b0c38fc..3f417f41 100755 +--- a/ohos/images/build_image.py ++++ b/ohos/images/build_image.py +@@ -40,7 +40,8 @@ def _prepare_root(system_path: str, target_cpu: str): + os.makedirs(root_dir, exist_ok=True) + _dir_list = [ + 'config', 'dev', 'proc', 'sys', 'updater', 'system', 'vendor', 'data', 'chip_ckm', +- 'storage', 'mnt', 'tmp', 'sys_prod', 'chip_prod', 'module_update', 'eng_system', 'eng_chipset' ++ 'storage', 'mnt', 'tmp', 'sys_prod', 'chip_prod', 'module_update', 'eng_system', 'eng_chipset', ++ 'soc_platform' + ] + for _dir_name in _dir_list: + os.makedirs(os.path.join(root_dir, _dir_name), exist_ok=True) +diff --git a/ohos/images/mkimage/dac.txt b/ohos/images/mkimage/dac.txt +index bc939aac..888b898b 100644 +--- a/ohos/images/mkimage/dac.txt ++++ b/ohos/images/mkimage/dac.txt +@@ -59,3 +59,6 @@ system/lib/ld-musl-riscv64.so.1,00755, 0, 2000, 0 + updater/lib/ld-musl-riscv64.so.1,00755, 0, 2000, 0 + system/lib/ld-musl-riscv64-asan.so.1,00755, 0, 2000, 0 + updater/lib/ld-musl-riscv64-asan.so.1,00755, 0, 2000, 0 ++soc_platform, 00755, 0, 2000, 0 ++soc_platform/bin, 00751, 0, 2000, 0 ++soc_platform/bin/*, 00755, 0, 2000, 0 +-- +2.25.1 + diff --git a/oriole/power_config/power_mode_config.xml b/oriole/power_config/power_mode_config.xml new file mode 100644 index 0000000000000000000000000000000000000000..493ad1cc590e688d7890eb4369b70db0683516e6 --- /dev/null +++ b/oriole/power_config/power_mode_config.xml @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/oriole/preinstall-config/BUILD.gn b/oriole/preinstall-config/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..207d8e0eae32a12779b916302d6b5fa56193d689 --- /dev/null +++ b/oriole/preinstall-config/BUILD.gn @@ -0,0 +1,47 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# 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. + +import("//build/ohos.gni") + +ohos_prebuilt_etc("install_list_config") { + source = "./install_list.json" + relative_install_dir = "app" + part_name = "product_oriole" +} + +ohos_prebuilt_etc("uninstall_list_config") { + source = "./uninstall_list.json" + relative_install_dir = "app" + part_name = "product_oriole" +} + +ohos_prebuilt_etc("install_list_capability_config") { + source = "./install_list_capability.json" + relative_install_dir = "app" + part_name = "product_oriole" +} + +ohos_prebuilt_etc("install_list_permissions_config") { + source = "./install_list_permissions.json" + relative_install_dir = "app" + part_name = "product_oriole" +} + +group("preinstall-config") { + deps = [ + ":install_list_capability_config", + ":install_list_config", + ":install_list_permissions_config", + ":uninstall_list_config", + ] +} diff --git a/oriole/preinstall-config/install_list.json b/oriole/preinstall-config/install_list.json new file mode 100644 index 0000000000000000000000000000000000000000..fa07778701d3fc0497e7f0c396422278f7442c90 --- /dev/null +++ b/oriole/preinstall-config/install_list.json @@ -0,0 +1,260 @@ +{ + "install_list" : [ + { + "app_dir" : "/system/app/com.ohos.systemui", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.launcher", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.settings", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.note", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.settingsdata", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.screenshot", + "removable" : false + }, + { + "app_dir" : "/system/app/ohos.samples.clock", + "removable" : false + }, + { + "app_dir" : "/system/app/ohos.samples.airquality", + "removable" : false + }, + { + "app_dir" : "/system/app/com.example.distributedcalc", + "removable" : false + }, + { + "app_dir" : "/system/app/ohos.samples.flashlight", + "removable" : false + }, + { + "app_dir" : "/system/app/ohos.samples.ecg", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.photos", + "removable" : false + }, + { + "app_dir" : "/system/app/ohos.samples.distributedmusicplayer", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.camera", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.devicemanagerui", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.dlpmanager", + "removable" : false + }, + { + "app_dir" : "/system/app/com.example.kikakeyboard", + "removable" : false + }, + { + "app_dir" : "/system/app/com.kika.hmos.inputmethod", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.medialibrary.MediaLibraryData", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.callui", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.mms", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.contacts", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.permissionmanager", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.settings.faceauth", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.useriam.authwidget", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.adminprovisioning", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.filepicker", + "removable" : false + }, + { + "app_dir" : "/system/app/ohos.global.systemres", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.contactsdataability", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.nweb", + "removable" : false + }, + { + "app_dir" : "/system/app/ohos.telephony.resources", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.download", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.telephonydataability", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.UserFile.ExternalFileManager", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.gameperceptio", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.backgroundtaskmgr.resources", + "removable" : false + }, + { + "app_dir" : "/system/app/ohos.sample.shopping", + "removable" : false + }, + { + "app_dir" : "/system/app/com.ohos.wallpaper", + "removable" : true + }, + { + "app_dir" : "/system/app/com.ohos.inputmethodchoosedialog", + "removable" : false + }, + { + "app_dir": "/system/app/com.ohos.sharepickerdialog", + "removable": false + }, + { + "app_dir" : "/system/app/cn.openharmony.pasteboarddialog", + "removable" : true + }, + { + "app_dir": "/system/app/com.ohos.amsdialog", + "removable": false + }, + { + "app_dir": "/system/app/com.usb.right", + "removable": true + }, + { + "app_dir": "/system/app/com.ohos.certificatemanager", + "removable": true + }, + { + "app_dir": "/system/app/com.ohos.powerdialog", + "removable": false + }, + { + "app_dir": "/system/app/com.ohos.notificationdialog", + "removable": true + }, + { + "app_dir": "/system/app/com.ohos.formrenderservice", + "removable": false + }, + { + "app_dir" : "/system/app/com.example.bluetoothopp", + "removable": true + }, + { + "app_dir": "/system/app/com.ohos.updateapp", + "removable": false + }, + { + "app_dir": "/system/app/com.ohos.spooler", + "removable": false + }, + { + "app_dir": "/system/app/com.ohos.calendardata", + "removable": false + }, + { + "app_dir" : "/system/app/com.example.location", + "removable" : false + }, + { + "app_dir": "/system/app/ohos.samples.etsrecorder", + "removable": true + }, + { + "app_dir": "/system/app/com.example.laval", + "removable": true + }, + { + "app_dir": "/system/app/ohos.samples.browser1", + "removable": true + }, + { + "app_dir": "/system/app/com.ohos.demandplayer", + "removable": true + }, + { + "app_dir": "/system/app/com.example.bluetoothopp", + "removable": true + }, + { + "app_dir": "/system/app/ohos.samples.recorder", + "removable": true + }, + { + "app_dir": "/system/app/com.laval.dispatchcenter", + "removable": true + }, + { + "app_dir": "/system/app/com.laval.bi", + "removable": false + }, + { + "app_dir": "/system/app/com.laval.betaclub", + "removable": false + }, + { + "app_dir": "/system/app/com.example.openharmony_7885", + "removable": true + }, + { + "app_dir": "/system/app/com.pengju.minihttpserver", + "removable": true + }, + { + "app_dir": "/system/app/com.ohos.mindspore.ai", + "removable": true + } + ] +} diff --git a/oriole/preinstall-config/install_list_capability.json b/oriole/preinstall-config/install_list_capability.json new file mode 100644 index 0000000000000000000000000000000000000000..0334cdcc469aab3c5a72f38f41998cafba827b1b --- /dev/null +++ b/oriole/preinstall-config/install_list_capability.json @@ -0,0 +1,257 @@ +{ + "install_list": [ + { + "bundleName": "ohos.samples.distributedmusicplayer", + "app_signature": ["CE457F6ACB11F9406B393AF490E6DEFAA4DD1CA7AB6F694EA6119EE18DDF4BBE"], + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.example.kikakeyboard", + "singleton": true, + "runningResourcesApply": false, + "associatedWakeUp": false, + "app_signature" : ["9AED2A79925ECA050CD2BB9D2A7F694E49E5E135D28EBDCE53836DE76B5080ED"], + "allowCommonEvent": [], + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.kika.hmos.inputmethod", + "singleton": true, + "runningResourcesApply": false, + "associatedWakeUp": false, + "app_signature" : ["D9D23C26F5FF825E47EA7142263CFE50ABE493C5C99B5FF1C7D0FE5EA221150F"], + "allowCommonEvent": [], + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.ohos.systemui", + "singleton": true, + "keepAlive": true, + "runningResourcesApply": false, + "app_signature" : ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "associatedWakeUp": false, + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.ohos.callui", + "app_signature" : ["E64B13B84E6D2167F73B46530C6E02E323DA43C9C2DA251D7C64D20E091B936F"], + "singleton": true, + "keepAlive": false, + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.ohos.contacts", + "app_signature" : ["04AC9C3F045EAB7DB992B7C4E38B59468CA3EABB7D654AE47641471B9785EA04"], + "singleton": true, + "keepAlive": false, + "allowCommonEvent": ["usual.event.INCOMING_CALL_MISSED","contact.event.CANCEL_MISSED"] + }, + { + "bundleName": "com.ohos.mms", + "app_signature" : ["04AC9C3F045EAB7DB992B7C4E38B59468CA3EABB7D654AE47641471B9785EA04"], + "singleton": true, + "keepAlive": false, + "allowCommonEvent": ["usual.event.SMS_RECEIVE_COMPLETED"] + }, + { + "bundleName": "com.ohos.settingsdata", + "app_signature" : ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "singleton": true, + "keepAlive": true, + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.ohos.backgroundtaskmgr.resources", + "app_signature" : ["72BE2C651A9E0C57B4BB67825BA6F8180FC883858434712150A55C17C7E1A6F7"], + "singleton": true, + "allowAppDesktopIconHide": true + }, + { + "bundleName": "ohos.global.systemres", + "app_signature" : ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "singleton": true, + "allowAppDesktopIconHide": true + }, + { + "bundleName": "com.ohos.devicetest", + "app_signature" : ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "runningResourcesApply": true, + "associatedWakeUp": true, + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.ohos.contactsdataability", + "app_signature" : ["D729F438E1EF2E154994E2B077F6C0CD592BA9F9C938BB428FCDA564FF805EE4"], + "associatedWakeUp": true, + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.ohos.telephonydataability", + "app_signature" : ["D729F438E1EF2E154994E2B077F6C0CD592BA9F9C938BB428FCDA564FF805EE4"], + "associatedWakeUp": true, + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.huawei.ohos.hiviewx", + "singleton": true, + "keepAlive": true, + "app_signature" : ["57D4E9DFE7504D12EB6ACAF39876F420BCABCA2F4721989B90FD2E4F1FB7ED2B"], + "allowCommonEvent": [], + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.ohos.inputmethodchoosedialog", + "app_signature" : ["CE4D01EF424B829E13652BB1743E18B8E4542DD5A7BBA7D7D472F727FA6F8A9D"], + "allowAppDesktopIconHide": true, + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "cn.openharmony.pasteboarddialog", + "app_signature": ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.ohos.amsdialog", + "app_signature": ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "allowAppUsePrivilegeExtension": true, + "allowAppDesktopIconHide": true + }, + { + "bundleName": "com.ohos.devicemanagerui", + "app_signature": ["DFBBF5BC714865FCCCACA69F30BEF951B499329F66C98523795BAD817E49D1A0"], + "allowAppDesktopIconHide": true, + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.ohos.launcher", + "app_signature": ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.ohos.medialibrary.medialibrarydata", + "app_signature": ["F9431859ED7A3959B5D72EF36FBE8B210A00082B044063E4424F823A01B3B7CA"], + "allowAppUsePrivilegeExtension": true, + "allowAppDesktopIconHide": true + }, + { + "bundleName": "com.ohos.permissionmanager", + "app_signature": ["68079CC9CB1BD69283D70790305645FFF61CD1E46CAFD7AA53B9FA8540432B81"], + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.ohos.dlpmanager", + "app_signature": [ + "E3F4322139E0109BAFAD8DA4096762068E31708C3CF201780E736D377D60B639", + "5FEDFF587F4109E565B96512404D606D539C8DFFCE1424ACBD1B2A7D3E843D4D" + ], + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.ohos.photos", + "app_signature": ["9AED2A79925ECA050CD2BB9D2A7F694E49E5E135D28EBDCE53836DE76B5080ED"], + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.ohos.powerdialog", + "app_signature": ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "allowAppUsePrivilegeExtension": true, + "allowAppDesktopIconHide": true + }, + { + "bundleName": "com.ohos.sharepickerdialog", + "app_signature": ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.usb.right", + "app_signature": ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "allowAppUsePrivilegeExtension": true, + "allowAppDesktopIconHide": true + }, + { + "bundleName": "com.ohos.screenshot", + "app_signature" : ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "allowAppUsePrivilegeExtension": true, + "allowAppDesktopIconHide": true + }, + { + "bundleName": "com.ohos.notificationdialog", + "app_signature" : ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "allowAppUsePrivilegeExtension": true, + "allowAppDesktopIconHide": true + }, + { + "bundleName": "com.ohos.nweb", + "app_signature" : [ + "49D779C85200D36A00DE63E2D85AEF22FE5C72FB268BE13923E589B49BFAFFDA", + "8AFD891FA100D478BEDB6962B157055F26CDD407ACAAD525CBA9FDE490BD23D9" + ], + "singleton": true, + "allowAppDesktopIconHide": true + }, + { + "bundleName": "com.ohos.settings.faceauth", + "app_signature" : ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "singleton": true, + "allowAppDesktopIconHide": true + }, + { + "bundleName": "com.ohos.useriam.authwidget", + "app_signature" : ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "singleton": true, + "allowAppDesktopIconHide": true + }, + { + "bundleName": "com.ohos.formrenderservice", + "app_signature": ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "singleton": true, + "allowAppUsePrivilegeExtension": true, + "allowAppDesktopIconHide": true + }, + { + "bundleName": "com.ohos.updateapp", + "app_signature": ["BA6EBDF53DD63B7D5616F3789F8C15FD4DE134B2587C577B01DA4D027B44A23C"], + "allowAppUsePrivilegeExtension": true, + "allowAppDesktopIconHide": true, + "allowCommonEvent": ["common.event.SPECIAL_CODE"] + }, + { + "bundleName": "com.ohos.spooler", + "app_signature" : ["B68D7BE6599CA7ADEDBC95CD1CE176AA96D996D3F41588A487E5F5C4E5DC9427"], + "allowAppDesktopIconHide": true + }, + { + "bundleName": "com.ohos.calendardata", + "app_signature" : ["CC249153FA175206B1427C71DB0F2232D91FA4B2ED7955AE1D6EBA4C362D359A"], + "allowAppDesktopIconHide": true, + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.laval.bi", + "app_signature" : ["161B018F761647414D959344141CAD4F48525DD8DA9B9286844ACED06781E879"], + "singleton": true, + "keepAlive": true, + "allowAppDesktopIconHide": true, + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.example.openharmony_7885", + "app_signature" : ["E4C16560CA1A097DA3DD21E272857C2F24FA43183BAB71642FA8A114E2CDAA87"], + "allowCommonEvent": ["usual.event.DIALER_SPECIAL_CODE", "common.event.SPECIAL_CODE"], + "allowAppDesktopIconHide": true, + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.pengju.minihttpserver", + "app_signature" : ["EA70FB970FBE582473F8F05EDD839D12FB61E1EDE62E72EAF33CF1AA5C7D8ED1"], + "allowAppDesktopIconHide": false, + "allowAppUsePrivilegeExtension": true + }, + { + "bundleName": "com.ohos.mindspore.ai", + "app_signature" : ["8F88459172A8BF100A193745E936D5E2AABFC2E294B07A2FFC39939A682C91BA"], + "allowAppDesktopIconHide": false, + "allowAppUsePrivilegeExtension": true + } + ] +} diff --git a/oriole/preinstall-config/install_list_permissions.json b/oriole/preinstall-config/install_list_permissions.json new file mode 100644 index 0000000000000000000000000000000000000000..5cf3a30d028af6e2113aa5a1643abe5947a19d5b --- /dev/null +++ b/oriole/preinstall-config/install_list_permissions.json @@ -0,0 +1,344 @@ +[ + { + "bundleName" : "com.ohos.screenshot", + "app_signature" : ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "permissions" : [ + { + "name" : "ohos.permission.MEDIA_LOCATION", + "userCancellable" : true + }, + { + "name" : "ohos.permission.READ_MEDIA", + "userCancellable" : true + }, + { + "name" : "ohos.permission.WRITE_MEDIA", + "userCancellable" : true + } + ] + }, + { + "bundleName" : "com.ohos.medialibrary.medialibrarydata", + "app_signature" : ["F9431859ED7A3959B5D72EF36FBE8B210A00082B044063E4424F823A01B3B7CA"], + "permissions" : [ + { + "name" : "ohos.permission.DISTRIBUTED_DATASYNC", + "userCancellable" : false + } + ] + }, + { + "bundleName" : "com.ohos.callui", + "app_signature" : ["E64B13B84E6D2167F73B46530C6E02E323DA43C9C2DA251D7C64D20E091B936F"], + "permissions" : [ + { + "name" : "ohos.permission.READ_CONTACTS", + "userCancellable" : false + }, + { + "name" : "ohos.permission.SEND_MESSAGES", + "userCancellable" : false + }, + { + "name" : "ohos.permission.ANSWER_CALL", + "userCancellable" : false + } + ] + }, + { + "bundleName" : "com.ohos.mms", + "app_signature" : ["04AC9C3F045EAB7DB992B7C4E38B59468CA3EABB7D654AE47641471B9785EA04"], + "permissions" : [ + { + "name" : "ohos.permission.READ_CONTACTS", + "userCancellable" : true + }, + { + "name" : "ohos.permission.READ_MESSAGES", + "userCancellable" : false + }, + { + "name" : "ohos.permission.SEND_MESSAGES", + "userCancellable" : false + }, + { + "name" : "ohos.permission.RECEIVE_SMS", + "userCancellable" : false + } + ] + }, + { + "bundleName": "com.ohos.systemui", + "app_signature" : ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "permissions" : [ + { + "name" : "ohos.permission.DISTRIBUTED_DATASYNC", + "userCancellable" : false + }, + { + "name" : "ohos.permission.GET_INSTALLED_BUNDLE_LIST", + "userCancellable" : false + }, + { + "name" : "ohos.permission.ACCESS_BLUETOOTH", + "userCancellable" : false + } + ] + }, + { + "bundleName": "com.ohos.contacts", + "app_signature" : ["04AC9C3F045EAB7DB992B7C4E38B59468CA3EABB7D654AE47641471B9785EA04"], + "permissions" : [ + { + "name" : "ohos.permission.READ_CONTACTS", + "userCancellable" : false + }, + { + "name" : "ohos.permission.WRITE_CONTACTS", + "userCancellable" : false + }, + { + "name" : "ohos.permission.READ_CALL_LOG", + "userCancellable" : false + }, + { + "name" : "ohos.permission.WRITE_CALL_LOG", + "userCancellable" : false + }, + { + "name" : "ohos.permission.MANAGE_VOICEMAIL", + "userCancellable" : false + } + ] + }, + { + "bundleName": "com.ohos.photos", + "app_signature" : ["9AED2A79925ECA050CD2BB9D2A7F694E49E5E135D28EBDCE53836DE76B5080ED"], + "permissions" : [ + { + "name" : "ohos.permission.READ_IMAGEVIDEO", + "userCancellable" : false + }, + { + "name" : "ohos.permission.WRITE_IMAGEVIDEO", + "userCancellable" : false + }, + { + "name" : "ohos.permission.READ_MEDIA", + "userCancellable" : false + }, + { + "name" : "ohos.permission.WRITE_MEDIA", + "userCancellable" : false + }, + { + "name" : "ohos.permission.MEDIA_LOCATION", + "userCancellable" : false + }, + { + "name" : "ohos.permission.DISTRIBUTED_DATASYNC", + "userCancellable" : false + } + ] + }, + { + "bundleName": "com.ohos.filepicker", + "app_signature" : ["C902DDEE3286715B8BA26175A1EF967985D22AEF44BE747702B604D956A76CFA"], + "permissions" : [ + { + "name" : "ohos.permission.READ_MEDIA", + "userCancellable" : false + }, + { + "name" : "ohos.permission.WRITE_MEDIA", + "userCancellable" : false + }, + { + "name" : "ohos.permission.MEDIA_LOCATION", + "userCancellable" : false + } + ] + }, + { + "bundleName": "com.ohos.camera", + "app_signature" : ["62C298EE70BEEB3D58082FFEFFEAD4F26BE83350B46B75C393281BA6AAED2A91"], + "permissions" : [ + { + "name" : "ohos.permission.READ_IMAGEVIDEO", + "userCancellable" : false + }, + { + "name" : "ohos.permission.WRITE_IMAGEVIDEO", + "userCancellable" : false + }, + { + "name" : "ohos.permission.MEDIA_LOCATION", + "userCancellable" : false + }, + { + "name" : "ohos.permission.DISTRIBUTED_DATASYNC", + "userCancellable" : false + }, + { + "name" : "ohos.permission.CAMERA", + "userCancellable" : false + }, + { + "name" : "ohos.permission.MICROPHONE", + "userCancellable" : false + }, + { + "name" : "ohos.permission.LOCATION", + "userCancellable" : false + }, + { + "name" : "ohos.permission.LOCATION_IN_BACKGROUND", + "userCancellable" : false + }, + { + "name" : "ohos.permission.APPROXIMATELY_LOCATION", + "userCancellable" : false + } + ] + }, + { + "bundleName": "com.ohos.inputmethodchoosedialog", + "app_signature" : ["CE4D01EF424B829E13652BB1743E18B8E4542DD5A7BBA7D7D472F727FA6F8A9D"], + "permissions" : [ + { + "name" : "ohos.permission.CONNECT_IME_ABILITY", + "userCancellable" : false + } + ] + }, + { + "bundleName": "com.huawei.ohos.hiviewx", + "app_signature" : ["57D4E9DFE7504D12EB6ACAF39876F420BCABCA2F4721989B90FD2E4F1FB7ED2B"], + "permissions" : [ + { + "name" : "ohos.permission.sec.ACCESS_UDID", + "userCancellable" : false + }, + { + "name" : "ohos.permission.GET_WIFI_INFO", + "userCancellable" : false + }, + { + "name" : "ohos.permission.GET_NETWORK_INFO", + "userCancellable" : false + }, + { + "name" : "ohos.permission.INTERNET", + "userCancellable" : false + }, + { + "name" : "ohos.permission.GET_BUNDLE_INFO_PRIVILEGED", + "userCancellable" : false + }, + { + "name" : "ohos.permission.READ_DFX_SYSEVENT", + "userCancellable" : false + } + ] + }, + { + "bundleName": "com.ohos.permissionmanager", + "app_signature" : ["68079CC9CB1BD69283D70790305645FFF61CD1E46CAFD7AA53B9FA8540432B81"], + "permissions" : [ + { + "name" : "ohos.permission.GET_INSTALLED_BUNDLE_LIST", + "userCancellable" : false + } + ] + }, + { + "bundleName": "com.ohos.dlpmanager", + "app_signature" : ["E3F4322139E0109BAFAD8DA4096762068E31708C3CF201780E736D377D60B639"], + "permissions" : [ + { + "name": "ohos.permission.READ_MEDIA", + "userCancellable" : false + }, + { + "name": "ohos.permission.WRITE_MEDIA", + "userCancellable" : false + }, + { + "name": "ohos.permission.ACCESS_DLP_FILE", + "userCancellable" : false + }, + { + "name": "ohos.permission.MANAGE_LOCAL_ACCOUNTS", + "userCancellable" : false + }, + { + "name":"ohos.permission.FILE_ACCESS_MANAGER", + "userCancellable" : false + }, + { + "name":"ohos.permission.START_ABILIIES_FROM_BACKGROUND", + "userCancellable" : false + }, + { + "name":"ohos.permission.GET_BUNDLE_INFO_PRIVILEGED", + "userCancellable" : false + }, + { + "name": "ohos.permission.MEDIA_LOCATION", + "userCancellable" : false + } + ] + }, + { + "bundleName": "com.ohos.useriam.authwidget", + "app_signature" : ["8E93863FC32EE238060BF69A9B37E2608FFFB21F93C862DD511CBAC9F30024B5"], + "permissions" : [ + { + "name" : "ohos.permission.ACCESS_PIN_AUTH", + "userCancellable" : false + }, + { + "name" : "ohos.permission.ACCESS_BIOMETRIC", + "userCancellable" : false + }, + { + "name" : "ohos.permission.SUPPORT_USER_AUTH", + "userCancellable" : false + } + ] + }, + { + "bundleName": "com.ohos.settings", + "app_signature" : ["EB5DBE52EE8DD7206DDE612E7484E88CE264E74958704D0712BFA774C87F4DA1"], + "permissions" : [ + { + "name" : "ohos.permission.GET_INSTALLED_BUNDLE_LIST", + "userCancellable" : false + } + ] + }, + { + "bundleName": "com.laval.dispatchcenter", + "app_signature" : ["161B018F761647414D959344141CAD4F48525DD8DA9B9286844ACED06781E879"], + "permissions" : [ + { + "name" : "ohos.permission.GET_INSTALLED_BUNDLE_LIST", + "userCancellable" : false + } + ] + }, + { + "bundleName": "com.laval.betaclub", + "app_signature" : ["161B018F761647414D959344141CAD4F48525DD8DA9B9286844ACED06781E879"], + "permissions" : [ + { + "name" : "ohos.permission.READ_MEDIA", + "userCancellable" : false + }, + { + "name" : "ohos.permission.READ_IMAGEVIDEO", + "userCancellable" : false + } + ] + } +] diff --git a/oriole/preinstall-config/uninstall_list.json b/oriole/preinstall-config/uninstall_list.json new file mode 100644 index 0000000000000000000000000000000000000000..0e0e7784a452341a6f996559c248e81323307a30 --- /dev/null +++ b/oriole/preinstall-config/uninstall_list.json @@ -0,0 +1,4 @@ +{ + "uninstall_list" : [], + "recover_list" : [] +} \ No newline at end of file diff --git a/oriole/product.gni b/oriole/product.gni new file mode 100644 index 0000000000000000000000000000000000000000..e141b7bc671bca8d67dd57ef0d1c82e26e8dbe51 --- /dev/null +++ b/oriole/product.gni @@ -0,0 +1,17 @@ +# Copyright (c) 2021 Huawei Device Co., Ltd. +# 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. + +import("//device/board/hardmony/${product_name}/device.gni") + +PRODUCT_SUBSYSTEM_NAME="product_laphone" +PRODUCT_PART_NAME="product_laphone" \ No newline at end of file diff --git a/oriole/resourceschedule/BUILD.gn b/oriole/resourceschedule/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..c4b3b9f1f19bc521daf92ea8933510bc9d8a4a88 --- /dev/null +++ b/oriole/resourceschedule/BUILD.gn @@ -0,0 +1,73 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# 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. + +import("//build/ohos.gni") + +ohos_prebuilt_etc("res_sched_config") { + source = "./ressched/res_sched_config.xml" + install_enable = true + install_images = [ "vendor" ] + module_install_dir = "etc/ressched" + part_name = "product_oriole" +} + +ohos_prebuilt_etc("res_sched_plugin_switch") { + source = "./ressched/res_sched_plugin_switch.xml" + install_enable = true + install_images = [ "vendor" ] + module_install_dir = "etc/ressched" + part_name = "product_oriole" +} + +ohos_prebuilt_etc("cgroup_action_config") { + source = "./cgroup_sched/cgroup_action_config.json" + install_enable = true + install_images = [ "vendor" ] + module_install_dir = "etc/cgroup_sched" + part_name = "product_oriole" +} + +ohos_prebuilt_etc("cgroup_vendor_config") { + source = "./cgroup_sched/resource_schedule_vendor.cfg" + install_enable = true + install_images = [ "vendor" ] + module_install_dir = "etc/init" + part_name = "product_oriole" +} + +ohos_prebuilt_etc("socperf_boost_config") { + source = "./soc_perf/socperf_boost_config.xml" + install_enable = true + install_images = [ "vendor" ] + module_install_dir = "etc/soc_perf" + part_name = "product_oriole" +} + +ohos_prebuilt_etc("socperf_resource_config") { + source = "./soc_perf/socperf_resource_config.xml" + install_enable = true + install_images = [ "vendor" ] + module_install_dir = "etc/soc_perf" + part_name = "product_oriole" +} + +group("resourceschedule") { + deps = [ + ":cgroup_action_config", + ":cgroup_vendor_config", + ":res_sched_config", + ":res_sched_plugin_switch", + ":socperf_boost_config", + ":socperf_resource_config", + ] +} diff --git a/oriole/resourceschedule/cgroup_sched/cgroup_action_config.json b/oriole/resourceschedule/cgroup_sched/cgroup_action_config.json new file mode 100644 index 0000000000000000000000000000000000000000..62881f345656076f433deac4873b8eb832b5718d --- /dev/null +++ b/oriole/resourceschedule/cgroup_sched/cgroup_action_config.json @@ -0,0 +1,26 @@ +{ + "Cgroups": [ + { + "controller": "cpu", + "path": "/dev/cpuctl", + "sched_policy": { + "sp_default": "", + "sp_background": "background", + "sp_foreground": "foreground", + "sp_system_background": "system-background", + "sp_top_app": "top-app" + } + }, + { + "controller": "cpuset", + "path": "/dev/cpuset", + "sched_policy": { + "sp_default": "", + "sp_background": "background", + "sp_foreground": "foreground", + "sp_system_background": "system-background", + "sp_top_app": "top-app" + } + } + ] +} diff --git a/oriole/resourceschedule/cgroup_sched/resource_schedule_vendor.cfg b/oriole/resourceschedule/cgroup_sched/resource_schedule_vendor.cfg new file mode 100644 index 0000000000000000000000000000000000000000..a7e4e8b80d9e9f00b5ec0f48c85fab548fbe2963 --- /dev/null +++ b/oriole/resourceschedule/cgroup_sched/resource_schedule_vendor.cfg @@ -0,0 +1,54 @@ +{ + "jobs" : [ + { + "name" : "init", + "cmds" : [ + "chmod 660 /sys/class/devfreq/scene-frequency/sprd-governor/scenario_dfs", + "chown system system /sys/class/devfreq/scene-frequency/sprd-governor/scenario_dfs", + "chmod 660 /sys/class/devfreq/scene-frequency/sprd-governor/exit_scene", + "chown system system /sys/class/devfreq/scene-frequency/sprd-governor/exit_scene" + ] + }, + { + "name" : "init", + "cmds" : [ + "write /dev/cpuset/cgroup.clone_children 1", + + "chown system system /dev/cpuset", + "mkdir /dev/cpuset/ui", + "chown system system /dev/cpuset/ui", + "chown system system /dev/cpuset/ui/tasks", + "chmod 0664 /dev/cpuset/ui/tasks", + + "mkdir /dev/cpuctl/ui", + "chown system system /dev/cpuctl/ui", + "chown system system /dev/cpuctl/ui/tasks", + "chmod 0664 /dev/cpuctl/ui/tasks", + + "write /dev/cpuset/top-app/cpuset.cpus 0-7", + "write /dev/cpuset/foreground/cpuset.cpus 4-7", + "write /dev/cpuset/system-background/cpuset.cpus 0-3", + "write /dev/cpuset/background/cpuset.cpus 0-1", + "write /dev/cpuset/ui/cpuset.cpus 4-7", + "write /dev/cpuctl/top-app/cpu.uclamp.min 30", + "write /dev/cpuctl/ui/cpu.uclamp.min 30", + + "write /dev/cpuctl/top-app/cpu.shares 1024", + "write /dev/cpuctl/foreground/cpu.shares 1024", + "write /dev/cpuctl/system-background/cpu.shares 768", + "write /dev/cpuctl/background/cpu.shares 512", + "write /dev/cpuset/ui/cpu.shares 1024", + + "write /sys/devices/system/cpu/cpufreq/policy0/scaling_governor uscfreq", + "write /sys/devices/system/cpu/cpufreq/policy4/scaling_governor uscfreq", + "write /sys/devices/system/cpu/cpufreq/policy7/scaling_governor uscfreq", + "write /sys/devices/system/cpu/cpufreq/policy0/uscfreq/freq_margin 30", + "write /sys/devices/system/cpu/cpufreq/policy4/uscfreq/freq_margin 25", + "write /sys/devices/system/cpu/cpufreq/policy7/uscfreq/freq_margin 15", + "write /proc/sys/walt/group_ctl/top-app/boost 10", + "write /proc/sys/walt/group_ctl/top-app/init_task_load_pct 45", + "write /proc/sys/walt/sched_spc_threshold 245" + ] + } + ] +} diff --git a/oriole/resourceschedule/ressched/res_sched_config.xml b/oriole/resourceschedule/ressched/res_sched_config.xml new file mode 100644 index 0000000000000000000000000000000000000000..336cde1b74e72414e7a1e50c488d8004e7567e45 --- /dev/null +++ b/oriole/resourceschedule/ressched/res_sched_config.xml @@ -0,0 +1,17 @@ + + + + \ No newline at end of file diff --git a/oriole/resourceschedule/ressched/res_sched_plugin_switch.xml b/oriole/resourceschedule/ressched/res_sched_plugin_switch.xml new file mode 100644 index 0000000000000000000000000000000000000000..9ba14677bdd3f1544b231e54d2dac05727906a9d --- /dev/null +++ b/oriole/resourceschedule/ressched/res_sched_plugin_switch.xml @@ -0,0 +1,20 @@ + + + + + + + diff --git a/oriole/resourceschedule/soc_perf/socperf_boost_config.xml b/oriole/resourceschedule/soc_perf/socperf_boost_config.xml new file mode 100644 index 0000000000000000000000000000000000000000..9b2aba5d5015122a07f2ff4ee2ceed54c30ca3ec --- /dev/null +++ b/oriole/resourceschedule/soc_perf/socperf_boost_config.xml @@ -0,0 +1,116 @@ + + + + + + 1000 + 2002000 + 2210000 + 2548000 + + + 1500 + 384000000 + + + + + 400 + 1228800 + 1228800 + 1820000 + 384000000 + + + + + 400 + 1228800 + 1703000 + 2366000 + 384000000 + + + + + 250 + 1228800 + 1228800 + 1820000 + 384000000 + + + + + 300 + 1228800 + 1703000 + 2366000 + 384000000 + + + + + 500 + 1228800 + 1228800 + 1820000 + + + + + 1000 + 1228800 + 1228800 + 1820000 + 384000000 + + + + + 500 + 1228800 + 1228800 + 1820000 + + + + + 200 + 1228800 + 1378000 + 2002000 + + + + + 800 + 1228800 + 1228800 + 1820000 + 384000000 + + + + + 400 + 1228800 + 1703000 + 2366000 + 384000000 + + + diff --git a/oriole/resourceschedule/soc_perf/socperf_resource_config.xml b/oriole/resourceschedule/soc_perf/socperf_resource_config.xml new file mode 100644 index 0000000000000000000000000000000000000000..7fa3c7f497f62bb319b5af546f907de16254c4ef --- /dev/null +++ b/oriole/resourceschedule/soc_perf/socperf_resource_config.xml @@ -0,0 +1,62 @@ + + + + + + 614400 + /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq + 614400 768000 936000 1105000 1228800 1404000 1560000 1703000 1846000 2002000 + + + 2002000 + /sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq + 614400 768000 936000 1105000 1228800 1404000 1560000 1703000 1846000 2002000 + + + + 614400 + /sys/devices/system/cpu/cpufreq/policy4/scaling_min_freq + 614400 768000 936000 1105000 1228800 1378000 1536000 1703000 1872000 2041000 2210000 + + + 2210000 + /sys/devices/system/cpu/cpufreq/policy4/scaling_max_freq + 614400 768000 936000 1105000 1228800 1378000 1536000 1703000 1872000 2041000 2210000 + + + + 614400 + /sys/devices/system/cpu/cpufreq/policy7/scaling_min_freq + 614400 768000 1228800 1536000 1820000 2002000 2132000 2262000 2366000 2457000 2548000 + + + 2548000 + /sys/devices/system/cpu/cpufreq/policy7/scaling_max_freq + 614400 768000 1228800 1536000 1820000 2002000 2132000 2262000 2366000 2457000 2548000 + + + + 26000000 + /sys/class/devfreq/23140000.gpu/min_freq + 26000000 76800000 153600000 384000000 512000000 680000000 850000000 + + + 850000000 + /sys/class/devfreq/23140000.gpu/max_freq + 26000000 76800000 153600000 384000000 512000000 680000000 850000000 + + + \ No newline at end of file diff --git a/oriole/security_config/critical_reboot_process_list.json b/oriole/security_config/critical_reboot_process_list.json new file mode 100755 index 0000000000000000000000000000000000000000..f7b72dc063896cf86b9509272bf6347360bc62fa --- /dev/null +++ b/oriole/security_config/critical_reboot_process_list.json @@ -0,0 +1,12 @@ +{ + "critical_reboot_process_list": [ + { + "name": "samgr", + "critical": [1, 1, 60] + }, + { + "name": "foundation", + "critical": [1, 4, 240] + } + ] +} diff --git a/oriole/security_config/high_privilege_process_list.json b/oriole/security_config/high_privilege_process_list.json new file mode 100644 index 0000000000000000000000000000000000000000..a09ac7d7757f2a5e700d508313fc66a3f57623cc --- /dev/null +++ b/oriole/security_config/high_privilege_process_list.json @@ -0,0 +1,108 @@ +{ + "high_privilege_process_list": [ + { + "name": "accessibility", + "gid": "root" + }, + { + "name": "appspawn", + "uid": "root", + "gid": "root" + }, + { + "name": "bootanimation", + "gid": "root" + }, + { + "name": "console", + "uid": "root" + }, + { + "name": "dhardware", + "gid": "root" + }, + { + "name": "media_service", + "gid": ["root", "system"] + }, + { + "name": "misc", + "uid": "root", + "gid": "root" + }, + { + "name": "netsysnative", + "uid": "root", + "gid": "root" + }, + { + "name": "nwebspawn", + "uid": "root", + "gid": "root" + }, + { + "name": "render_service", + "uid": "system", + "gid": ["root", "system"] + }, + { + "name": "resource_schedule_service", + "uid": "root", + "gid": "root" + }, + { + "name": "storage_daemon", + "uid": "root", + "gid": "root" + }, + { + "name": "udevd_service", + "uid": "root", + "gid": "system" + }, + { + "name": "ueventd", + "uid": "system", + "gid": "system" + }, + { + "name": "modem_control_service", + "uid": "root", + "gid": [ "root", "system", "radio" ] + }, + { + "name": "cp_diskserver_service", + "uid": "root", + "gid": [ "root", "system", "radio" ] + }, + { + "name": "concurrent_task_service", + "uid": "system", + "gid": "system" + }, + { + "name": "hdcd", + "uid": "root" + }, + { + "name": "key_enable", + "uid": "root", + "gid": "root" + }, + { + "name": "codec_host", + "uid": "root", + "gid": "root" + }, + { + "name": "log_catcher_service", + "uid": "root", + "gid": "root" + }, + { + "name": "mini_http_service", + "uid": "root", + "gid": "root" + } + ] +} \ No newline at end of file diff --git a/oriole/security_config/sanitizer_check_list.gni b/oriole/security_config/sanitizer_check_list.gni new file mode 100755 index 0000000000000000000000000000000000000000..06087ad7e5de2be05a5c8625e6ac22d960a05e17 --- /dev/null +++ b/oriole/security_config/sanitizer_check_list.gni @@ -0,0 +1,1439 @@ +# Copyright (C) 2023 HiHope Open Source Organization . +# 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. + +# audio_framework : //foundation/multimedia/audio_framework +bypass_audio_framework = [ + "audio_capturer_gateway", + "oh_audio_capturer_test", + "oh_audio_capturer_lowlatency_test", + "audio_opensles_player_test", + "audio_renderer_gateway", + "oh_audio_renderer_test", + "audio_opensles_recorder_test", + "audio_capturer_test", + "audio_renderer_test", + "audio_toneplayer_test", + "audio_latency_accuracy_test", + "audio_render_mode_callback_test", + "audio_process_client_test", + "audio_voip_test", + "audio_hdi_device_test", + "audio_policy_test", + "audio_interrupt_test", + "audio_service_playback_test", + "interrupt_multi_renderer_test", + "audio_faststream_playback_test", + "audio_blendmode_test", + "audio_service_record_test", + "audio_multichannel_test", + "audio_schedule", + "ohaudio", + "opensles", + "audio_common", + "audio_dump", + "audio", + "audio_client", + "audio_policy_service", + "audio_capturer", + "audio_renderer", + "audio_process_service", + "audio_toneplayer", + "audio_service", + "audio_policy_client", + "module-loopback", + "module-inner-capturer-sink", + "module-hdi-sink", + "module-receiver-sink", + "module-hdi-source", + "audio_utils", + "audio_bluetooth_client", + "pulse_audio_service_adapter", + "audio_capturer_source", + "audio_renderer_sink", + "playback_capturer", + "audio_effect", + "fast_audio_capturer_source", + "fast_audio_renderer_sink", + "remote_audio_capturer_source", + "bluetooth_renderer_sink", + "remote_fast_audio_capturer_source", + "remote_audio_renderer_sink", + "audio_capturer_file_source", + "remote_fast_audio_renderer_sink", + "capturer_source_adapter", + "audio_renderer_file_sink", + "renderer_sink_adapter", + "audio_device_manager", +] + +# histreamer : //foundation/multimedia/histreamer +bypass_histreamer = [ + "histreamer_pipeline_base", + "histreamer_plugin_intf", + "plugin_base", + "ffmpeg_convert", + "histreamer_pipeline", + "histreamer_plugin_core", + "std_engine_factory", + "histreamer_foundation", + "codec_filters", + "muxer_filter", + "media_synchronous_sink", + "audio_capture_filter", + "scene_common", + "demuxer_filter", + "audio_sink_filter", + "media_source_filter", + "video_sink_filter", + "video_capture_filter", + "output_sink_filter", + "ffmpeg_adapter_common", + "filesource", + "httpsource", + "std_stream_source", + "ffmpeg_audio_decoders", + "std_audio_capture", + "filefdsource", + "audio_server_sink", + "file_fd_sink", + "std_video_surface_sink", + "ffmpeg_demuxers", + "std_plugin_codec_adapter", + "ffmpeg_audio_encoders", + "histreamer_recorder", + "histreamer_player", + "ffmpeg_video_decoders", + "ffmpeg_video_encoders", + "ffmpeg_muxers", +] + +# av_session : //foundation/multimedia/av_session +bypass_av_session = [ + "avcastpicker", + "mediacontrolextensionability_napi", + "avsession_client", + "mediacontrolextensioncontext_napi", + "media_control_extension", + "media_control_extension_module", + "avsession_item", + "avsession_common", + "avsession_napi", + "avsession_utils", + "avsession_cast_client", + "avsession_service", + "remote_session_source", + "avsession_router", + "remote_session_sink", + "avsession_cast_item", +] + +# huks : //base/security/huks +bypass_huks = [ + "libhukssdk_static", + "cipher_napi", + "cipher_shared", + "huks_modify_old_version_key_util", +] + +# certificate_manager : //base/security/certificate_manager +bypass_certificate_manager = [ "libcert_manager_fuzz_test_common_static" ] + +# image_framework : //foundation/multimedia/image_framework +bypass_image_framework = [ + "pixelconvertadapter_static", + "image_static", + "image_utils_static", + "log_mock_static", + "utils_mock_static", + "pluginmanager_static", + "jpegplugin", + "textureEncoderCL", +] + +# media_library : //foundation/multimedia/media_library +bypass_media_library = [ + "scanner", + "medialibrary_data_extension", +] + +bypass_user_file_service = [] + +# contacts_data_hap : //applications/standard/contacts_data +bypass_contacts_data_hap = [ "contactsdataability" ] + +# crypto_framework : //base/security/crypto_framework +bypass_crypto_framework = [ + "crypto_plugin_common", + "crypto_framework_lib", + "cryptoframework_napi", +] + +# wpa_supplicant : //third_party/wpa_supplicant +bypass_wpa_supplicant = [ + "wpa_cli", + "hostapd_cli", + "wpa_supplicant", + "hostapd", + "wpa_client", + "wpa_client_updater", + "wpa", + "wpa_sys", + "wpa_updater", +] + +# netmanager_base : //foundation/communication/netmanager_base +bypass_netmanager_base = [ + "net_conn_parcel", + "net_policy_parcel", + "net_native_parcel", + "netsys_native_manager_static", + "net_stats_parcel", + "libip4tc", + "libip6tc", + "libxtables", + "libext4", + "libext6", + "net_connection", + "net_conn_manager_if", + "net_conn_manager", + "napi_utils", + "net_policy_manager", + "net_native_manager_if", + "net_stats_manager_if", + "net_policy_manager_if", + "socket_permission", + "netconn_ndk", + "netsys_client", +] + +# camera_framework : //foundation/multimedia/camera_framework +bypass_camera_framework = [ + "camera_video", + "camera_capture", + "camera_capture_video", + "camera_capture_mode", + "camera_framework", + "camera_napi", + "camera_service", + "deferred_processing_service", +] + +# player_framework : //foundation/multimedia/player_framework +bypass_player_framework = [ + "media", + "media_format", + "audio_ringtone_client", + "media_seccomp_filter", + "media_engine_common_avcodeclist", + "media_engine_gst_common", + "media_engine_gst_loader", + "media_engine_gst_recorder", + "media_engine_gst_factory", + "media_gst_dfx", + "media_engine_gst_player", + "media_engine_gst_avcodec", + "media_engine_gst_avmeta", + "gst_subtitle_sink_base", + "gst_subtitle_parse_plugin", + "gst_mem_sink_base", + "gst_mem_src_base", + "media_engine_dfx", + "gst_codec_plugins_common", + "soundpool_client", + "gst_mem_sink", + "gst_codec_bin", + "gst_audio_server_sink", + "gst_subtitle_sink", + "gst_audio_capture_src", + "gst_mem_src", + "gst_media_common", + "gst_codec_plugin_hdi", + "native_avscreen_capture", +] + +bypass_screenlock_mgr = [] +bypass_nfc = [] + +# wifi : //foundation/communication/wifi +bypass_wifi = [ + "crpc_client_updater", + "WifiHalVendorTest", + "crpc_server", + "crpc_client", + "wifi_hal_service", + "wifi_hal_service_updater", + "wifi_scan_service_impl", + "wifi_device_service_impl", + "wifi_utils", + "wifi_hotspot_service_impl", + "wifi_p2p_service_impl", + "wifi_device_proxy_impl", + "wifi_hotspot_proxy_impl", + "wifi_scan_proxy_impl", + "wifi_p2p_proxy_impl", + "rpc_server", + "rpc_client", + "wifi", + "wifiext", + "wifi_native_js", + "wifimanager", + "wifimanagerext", + "wifi_sdk", +] + +# dsoftbus : //foundation/communication/dsoftbus +bypass_dsoftbus = [ "softbus_server" ] + +# hilog : //base/hiviewdfx/hilog +bypass_hilog = [ + "libhilog", + "libhilog_base", + "hilog", + "hilogd", + "libhilognapi_src", + "libhilog_source_ohos", + "libhilog_source_windows", + "libhilog_source_mac", + "libhilog_source_linux", + "libhilog_source_android", + "libhilog_source_ios", + "libhilog_base_source", + "libhilog_source_ohos", + "libhilog_source_windows", + "libhilog_source_mac", + "libhilog_source_linux", + "libhilog_source_android", + "libhilog_source_ios", + "libhilog_base_source", +] + +# bluetooth : //foundation/communication/bluetooth +bypass_bluetooth = [ + "btframework", + "bluetooth", + "bluetoothmanager", + "btcommon", + "a2dp", + "access", + "baseprofile", + "ble", + "connection", + "constant", + "hfp", + "hid", + "pan", + "socket", +] + +# bluetoth_service : //foundation/communication/bluetooth_service +bypass_bluetooth_service = [ + "bluetooth_server", + "btservice", + "btsbc", + "btdummy", + "btstack", + "bluetooth_hdi_adapter", + "btipc_static", + "btipc_service", +] + +#device_security_level : //base/security/device_security_level +bypass_device_security_level = [ + "messenger_static", # blocklist contains test code only + "utils_static", # blocklist contains test code only + "DslmUnitTest", # blocklist contains test code only + "dslm_extension_dfx", # blocklist contains test code only + "service_common_obj", # blocklist contains test code only + "service_sa_static", # blocklist contains test code only + "service_dslm_obj", # blocklist contains test code only + "service_dslm_test_obj", # blocklist contains test code only + "service_msg_obj", # blocklist contains test code only + "oem_common_obj", # blocklist contains test code only + "dslm_sdk", # blocklist contains test code only + "dslm_service", # blocklist contains test code only + "dslm_oem_ext", # blocklist contains test code only + "dslm_ohos_cred_obj", # blocklist contains test code only +] + +# face_auth : //base/useriam/face_auth +bypass_face_auth = [ + "iam_utils", + "faceauth", + "faceauth_framework", + "faceauth_framework_stub", + "faceauthservice_source_set", + "faceauthservice", + "faceauthservice_ex", + "faceauthservice_ex_source_set", + "faceauth_framework_stub_fuzzer", #cfi not configured + "faceauthservice_source_set_fuzzer", #cfi not configured +] + +# fingerprint_auth : //base/useriam/fingerprint_auth +bypass_fingerprint_auth = [ + "fingerprintauthservice_source_set_fuzzer", #cfi not configured +] + +# pin_auth : //base/useriam/pin_auth +bypass_pin_auth = [ + "iam_utils", + "pinauth_framework_source_set", + "pinauth_framework", + "pinauth_ipc", + "pinauthservice_source_set", + "pinauthservice", + "pinauth_ipc_fuzzer", #cfi not configured + "pinauthservice_source_set_fuzzer", #cfi not configured +] + +# user_auth_framework ://base/useriam/user_auth_framework +bypass_user_auth_framework = [ + "iam_thread_pool", + "iam_utils", + "iam_test", + "userauthextensionability_napi", + "user_auth_extension", + "user_auth_extension_module", + "userauth", + "attributes", + "dfx", + "userauth_executors", + "userauth_client", + "userauth_client_ipc", + "userauth_service_ipc", + "userauthservice", + "userauth_service_core", + "userauth_service_base", + "userauth_service_context", + "userauth_services_ipc", + "attributes_fuzzer", #cfi not configured + "dfx_fuzzer", #cfi not configured + "userauth_client_ipc_fuzzer", #cfi not configured + "userauth_service_base_fuzzer", #cfi not configured + "userauth_service_core_fuzzer", #cfi not configured + "userauth_service_context_fuzzer", #cfi not configured + "userauth_service_ipc_fuzzer", #cfi not configured + "userauth_services_ipc_fuzzer", #cfi not configured + "iam_thread_pool_fuzzer", #cfi not configured + "iam_utils_fuzzer", #cfi not configured + "iam_test_fuzzer", #cfi not configured +] + +bypass_enterprise_device_management = [] + +# wallpaper_mgr : //base/theme/wallpaper_mgr +bypass_wallpaper_mgr = [ + "wallpapermanager", #cfi not configured + "wallpapermanager_static", #cfi not configured + "wallpaper_utils", #cfi not configured +] + +# resource_schedule_service : //foundation/resourceschedule/resource_schedule_service +bypass_resource_schedule_service = [ + #"component_sched_plugin", #cfi not configured + "device_standby_plugin", #cfi not configured + + #"resschedsvc", + "ressched_test", #cfi not configured + "process_proup_test", #cfi not configured +] + +# data_object : //foundation/distributeddatamgr/data_object +bypass_data_object = [ "distributeddataobject_static" ] + +# device_auth : //base/security/device_auth +bypass_device_auth = [ + "hichainsdk", #cfi not configured + "hichainsdk_static", #cfi not configured + "device_auth_test_hal", #cfi not configured + "deviceauth_service", + "deviceauth_sdk", +] + +# data_share : //foundation/distributeddatamgr/data_share +bypass_data_share = [ + "datashare_provider", #cfi not configured +] + +# time_service : //base/time/time_service +bypass_time_service = [ + "time_system_ability", + "time_system_ability_static", +] + +bypass_imf = [] + +# location : //base/location +bypass_location = [ + "lbsservice_gnss", + "lbsservice_network", + "lbsservice_passive", + "locator_sdk", + "geolocation", + "lbsservice_common", + "locator_agent", + "geolocation_static", + "lbsservice_geocode", + "geolocationmanager", +] + +bypass_dmsfwk = [] + +# usb_manager : //base/use/usb_manager +bypass_usb_manager = [ + "usbsrv_client", + "usb", + "usbmanager", +] + +# sensor : //base/sensors/sensor +bypass_sensor = [ "sensor_rust_util_ffi" ] + +# battery_manager : //base/powermgr/battery_manager +bypass_battery_manager = [ + "batterysrv_client", + "charger", + "batteryinfo", + "batterysrv_stub", + "battery", +] + +# battery_statistics ://base/powermgr/battery_statistics +bypass_battery_statistics = [ + "batterystatistics", + "batterystats_client", + "batterystats_service", + "batterystats_stub", + "batterystats_utils", #cfi not configured +] + +# display_manager ://base/powermgr/display_manager +bypass_display_manager = [ + "brightness", + "displaymgr", + "displaymgr_stub", +] + +# power_manager : //base/powermgr/power_manager +bypass_power_manager = [ + "power-shell", + "power_sysparam", + "power_permission", + "power_setting", + "powermgr_client", #cfi not configured + "power_ffrt", + "power_vibrator", + "powermgr_stub", #cfi not configured + "power_utils", #cfi not configured + "power", #cfi not configured + "runninglock", #cfi not configured +] + +# thermal_manager : //base/powermgr/thermal_manager +bypass_thermal_manager = [ + "thermalservice", + "mock_thermalsrv_client", + "thermalsrv_client", + "thermalmgr_listener", + "thermal_protector", + "thermal", + "thermal_utils", + "thermalmgr_stub", + "thermalmgr_proxy", +] + +# device_status ://base/msdp/device_status +bypass_device_status = [ + "devicestatus_mock", #cfi not configured + "devicestatus_static_service", #cfi not configured + "devicestatus_vdev", #cfi not configured + "devicestatus_vdev_builders", #cfi not configured + "vdevadm", #cfi not configured +] + +bypass_motion = [] + +bypass_spatial_awareness = [] + +bypass_algorithm = [] + +# window_manager : //foundation/window/window_manager +bypass_window_manager = [ + "setresolution_screen", #cfi not configured + "libsetresolution_util", #cfi not configured + "libwmutil", #cfi not configured + "screensessionmanager_napi", #cfi not configured + "demo_mirror_screen_listener", #cfi not configured + "demo_screenshot_listener", #cfi not configured + "demo_snapshot_virtual_screen", #cfi not configured + "demo_system_sub_window", #cfi not configured + "demo_freeze_display", #cfi not configured + "demo_water_mark_listener", #cfi not configured + "demo_session_manager", #cfi not configured + "ws_unittest_common", #cfi not configured + "utils_unittest_common", #cfi not configured + "window_extension_unittest_common", #cfi not configured + "dm_unittest_common", #cfi not configured + "dms_systemtest_common", #cfi not configured + "dmserver_unittest_common", #cfi not configured + "wm_unittest_common", #cfi not configured + "libtestutil", #cfi not configured + "wms_systemtest_common", #cfi not configured + "libwm_lite", #cfi not configured + "libdm", #cfi not configured +] + +bypass_qos_manager = [] + +bypass_call_manager = [] + +bypass_cellular_call = [] + +# core_service : //base/telephony/core_service +bypass_core_service = [ + "vcard", #cfi not configured + "libtel_vcard", #cfi not configured +] + +bypass_rill_adapter = [] + +bypass_sms_mms = [] + +bypass_state_registry = [] + +bypass_telephony_data = [] + +# common_event_service : //base/notification/common_event_service +bypass_common_event_service = [ + "cesfwk_core", #cfi not configured + "cesfwk_innerkits", + "cesfwk_services_static", #cfi not configured + "tools_cem_source_set", #cfi not configured + "actscesfwk_kits_test", #cfi not configured + "cesfwk_kits_test", #cfi not configured + "cesfwk_services", #cfi not configured +] + +bypass_distributed_notification_service = [] + +# eventhandler : //base/notification/eventhandler +bypass_eventhandler = [ "libeventhandler" ] + +# os_account : //base/account/os_account +bypass_os_account = [ + "accountmgr", + "account_iam_napi", # napi target, not required to enable cfi + "appaccount", # napi target, not required to enable cfi + "account_napi_common", # napi target, not required to enable cfi + "distributedaccount", # napi target, not required to enable cfi + "domain_account_napi", # napi target, not required to enable cfi + "osaccount", # napi target, not required to enable cfi +] + +# access_token : //base/security/access_token +bypass_access_token = [ + "token_sync_manager_service", + "accesstoken_manager_service", + "privacy_manager_service", + "libaccesstoken_sdk", + "libnativetoken", + "libprivacy_sdk", + "libtoken_callback_sdk", + "libtokenid_sdk", + "libtoken_setproc", #cfi not configured + "libcodesignature_analysis", + "atm", #cfi not configured + "libabilityaccessctrl", + "libnapi_common", + "libprivacymanager", + "libtokensync_sdk", + "accesstoken_service_common", + "accesstoken_common_cxx", + "accesstoken_communication_adapter_cxx", + "privacy_communication_adapter_cxx", +] + +bypass_dupdate_engine = [] + +# input : //foundation/multimodalinput/input +bypass_input = [ + "mmi_rust_key_config", #cfi not configured + "mmi_rust", #cfi not configured + "libmmi-common", #cfi not configured + "libmmi-util", #cfi not configured + "libmmi-client", #cfi not configured +] + +bypass_device_attest = [] + +bypass_perferences = [] + +# relational_store : //foundation/distributeddatamgr/relational_store +bypass_relational_store = [ + "commontype_napi", #cfi not configured + "cloudextension", #cfi not configured +] + +bypass_miscdevice = [] + +# app_file_service : //foundation/filemanagement/app_file_service +bypass_app_file_service = [ + "fileuri_native", #cfi not configured + "fileshare", #cfi not configured + "remote_file_share_native", #cfi not configured + "fileuri", #cfi not configured + "sandbox_helper_native", #cfi not configured + "backup", #cfi not configured + "backup_tool", #cfi not configured + "backup_cxx_rust", #cfi not configured +] + +# file_api : //foundation/filemanagement/file_api +bypass_file_api = [ + "rust_file", #cfi not configured +] + +# storage_service : //foundation/filemanagement/storage_service +bypass_storage_service = [ + "blkid", #cfi not configured +] + +bypass_scene_board_ext = [] + +# background_task_mgr : //foundation/resourceschedule/background_task_mgr +bypass_background_task_mgr = [ "bgtaskmgr_service_static" ] + +bypass_device_usage_statistics = [] + +bypass_efficiency_manager = [] + +bypass_efficiency_manager_ext = [] + +bypass_frame_aware_sched = [] + +bypass_memmgr = [] + +bypass_memmgr_plugin = [] + +# work_scheduler : //foundation/resourceschedule/work_scheduler +bypass_work_scheduler = [ "workschedservice_static" ] + +# accessibility : //foundation/barrierfree/accessibility +bypass_accessibility = [ + "accessibility", + "accessibleability", + "accessibilityconfig", + "accessibilityclient", + "config_napi", + "accessibilityextensionability_napi", + "accessibilityextensioncontext_napi", + "accessibility_extension_module", + "gesturepath_napi", + "gesturepoint_napi", +] + +# ffrt : //foundation/resourceschedule/ffrt +bypass_ffrt = [ + "libffrt", #cfi not configured + "ffrt_ndk", #cfi not configured +] + +# advertising : //domains/advertising/advertising +bypass_advertising = [ + "advertising", + "adcomponent", + "adsserviceextensionability_napi", + "autoadcomponent", + "adsserviceextensioncontext_napi", + "libadsservice_extension", + "adsservice_extension_module", + "advertising_common", +] + +# oaid : //domains/advertising/oaid +bypass_oaid = [ + "oaid_client", + "oaid", + "oaid_service", + "oaid_utils", +] + +# init : //base/startup/init +bypass_init = [ + "watchdog_service", #cfi not configured + "libueventd_ramdisk_static", #cfi not configured + "begetctl", #cfi not configured + "loopevent", #cfi not configured + "libbegetutil", #cfi not configured + "libfsmanager_static", #cfi not configured + "seccomp", #cfi not configured + "ueventd", #cfi not configured + "reboot", #cfi not configured + "libbeget_proxy", #cfi not configured + "paramshell", #cfi not configured + "param", #cfi not configured + "libbegetutil_static", #cfi not configured + "deviceinfo_ndk", #cfi not configured + "deviceinfo", #cfi not configured + "init_log", #cfi not configured + "agent_log", #cfi not configured + "systemparameter", #cfi not configured + "bootchart", #cfi not configured + "init_context", #cfi not configured + "init_eng", #cfi not configured + "libiniteng_static", #cfi not configured + "rebootmodule", #cfi not configured + "init_early", #cfi not configured + "init", #cfi not configured + "systemparameterenhance", #cfi not configured + "udidmodule", #cfi not configured + "libudid_static", #cfi not configured + "libudidcomm", #cfi not configured + "selinuxadp", #cfi not configured + "system_filter", #cfi not configured + "appspawn_filter", #cfi not configured + "initcontext_static", #cfi not configured + "nwebspawn_filter", #cfi not configured + "app_filter", #cfi not configured + "inittrace", #cfi not configured + "updater_filter", #cfi not configured + "libseccomp_static", #cfi not configured + "eventmodule", #cfi not configured + "parameterbase_ext", #cfi not configured + "param_init", #cfi not configured + "libinit_utils", #cfi not configured + "param_client", #cfi not configured + "client", #cfi not configured + "fd_holder_test", #cfi not configured + "libfuzz_utils", #cfi not configured + "server", #cfi not configured + "ondemandTest", #cfi not configured + "libparamtestmodule", #cfi not configured + "libsocket", #cfi not configured + "sandbox", #cfi not configured + "libcontrolfd", #cfi not configured + "libfile", #cfi not configured + "fdholder", #cfi not configured + "sh", #cfi not configured + "libcrashhandler", #cfi not configured +] + +# bundle_framework : //foundation/bundlemanager/bundle_framework +bypass_bundle_framework = [ + "appexecfwk_base", #cfi not configured + "appexecfwk_core", #cfi not configured + "bundlemgr_extension", #cfi not configured + "libappexecfwk_common", #cfi not configured + "bundle_napi_common", #cfi not configured + "app_detail_ability", #cfi not configured + "bundlemgr_graphics", #cfi not configured + "parser_common", #cfi not configured + "bms_install_sst_source", #cfi not configured + "rpcid_decode", #cfi not configured + "bundle_ndk", #cfi not configured + "bundle_parser", #cfi not configured + "installs", #cfi not configured + "bundlemanager", #cfi not configured + "bundlemonitor", #cfi not configured + "bundleresourcemanager", #cfi not configured + "bundle", #cfi not configured + "defaultappmanager", #cfi not configured + "freeinstall", #cfi not configured + "installer", #cfi not configured + "launcherbundlemanager", #cfi not configured + "overlay", #cfi not configured + "innerbundlemanager", #cfi not configured + "package", #cfi not configured + "appcontrol", #cfi not configured + "zlib", #cfi not configured + "tool_common", #cfi not configured + "fun", #cfi not configured + "hello", #cfi not configured + "test01", #cfi not configured + "test02", #cfi not configured + "otaUpdateTestAplUpSo1", #cfi not configured + "otaUpdateTestAplUpSo2", #cfi not configured + "otaUpdateTestBasisFt1So1", #cfi not configured + "otaUpdateTestBasisFt2So1", #cfi not configured + "otaUpdateTestBasisFt1So2", #cfi not configured + "otaUpdateTestBasisFt2So2", #cfi not configured + "otaUpdateTestModuleFieldSo1", #cfi not configured + "otaUpdateTestSignaIconSo1", #cfi not configured + "otaUpdateTestModuleFieldSo2", #cfi not configured + "otaUpdateTestSignaIconSo2", #cfi not configured + "otaUpdateTestSoChangedSo1", #cfi not configured + "otaUpdateTestSoChangedSo2", #cfi not configured + "otaUpdateTestSoChangedFt2So1", #cfi not configured + "otaUpdateTestAplDownSo1", #cfi not configured + "otaUpdateTestAplDownSo2", #cfi not configured + "hapso3", #cfi not configured + "hapso17", #cfi not configured + "hapSectionContainso5", #cfi not configured + "hapso4", #cfi not configured + "hapso31", #cfi not configured + "hapso18", #cfi not configured + "hapso15", #cfi not configured + "hapSectionContainso6", #cfi not configured + "hapso32", #cfi not configured + "hapso16", #cfi not configured + "hapso1", #cfi not configured + "hapso37", #cfi not configured + "hapso9", #cfi not configured + "hspast41", #cfi not configured + "hapso2", #cfi not configured + "hapso10", #cfi not configured + "hapso38", #cfi not configured + "hspast42", #cfi not configured + "hapso21", #cfi not configured + "hapSectionContainso3", #cfi not configured + "hapso22", #cfi not configured + "hapso27", #cfi not configured + "hapSectionContainso4", #cfi not configured + "hspast21", #cfi not configured + "hapso28", #cfi not configured + "hspast22", #cfi not configured + "hspast31", #cfi not configured + "hapso7", #cfi not configured + "hapSectionContainso7", #cfi not configured + "hspast32", #cfi not configured + "hapso29", #cfi not configured + "hapso8", #cfi not configured + "hapSectionContainso8", #cfi not configured + "hapso30", #cfi not configured + "hapso19", #cfi not configured + "hapso13", #cfi not configured + "hapso20", #cfi not configured + "hapso14", #cfi not configured + "hapso23", #cfi not configured + "hapso24", #cfi not configured + "hapso33", #cfi not configured + "hapso5", #cfi not configured + "hapso34", #cfi not configured + "hapso11", #cfi not configured + "hapso6", #cfi not configured + "hapso25", #cfi not configured + "hapso12", #cfi not configured + "hapso26", #cfi not configured + "hapso35", #cfi not configured + "hapSectionContainso1", #cfi not configured + "hspast11", #cfi not configured + "hapso36", #cfi not configured + "hapSectionContainso2", #cfi not configured + "hspast12", #cfi not configured +] + +# ability_runtime : //foundation/ability/ability_runtime +bypass_ability_runtime = [ + "quickfixms", #cfi not configured + "abilitykit_utils", #cfi not configured + "quickfixms_static", #cfi not configured + "abilitykit_native", #cfi not configured + "js_environment", #cfi not configured + "extensionkit_native", #cfi not configured + "wantagent_innerkits", #cfi not configured + "ability_context_native", #cfi not configured + "ability_simulator_inner", #cfi not configured + "ability_manager", #cfi not configured + "session_handler", #cfi not configured + "insight_intent_executor", #cfi not configured + "quickfix_manager", #cfi not configured + "mission_info", #cfi not configured + "srms_fwk", #cfi not configured + "napi_base_context", #cfi not configured + "uiabilitykit_native", #cfi not configured + "ability_manager_c", #cfi not configured + "napi_ability_common", #cfi not configured + "ability_start_setting", #cfi not configured + "connection_obs_manager", #cfi not configured + "dialog_request_info", #cfi not configured + "ability_thread", #cfi not configured + "appkit_native", #cfi not configured + "ability_connect_callback_stub", #cfi not configured + "ability_runtime_error_util", #cfi not configured + "tools_aa_source_set", #cfi not configured + "form_extension", #cfi not configured + "extension_manager", #cfi not configured + "auto_fill_manager", #cfi not configured + "app_context", #cfi not configured + "dataobs_manager", #cfi not configured + "aa", #cfi not configured + "form_extension_module", #cfi not configured + "ability_deps_wrapper", #cfi not configured + "runtime", #cfi not configured + "app_context_utils", #cfi not configured + "napi_common", #cfi not configured + "app_manager", #cfi not configured + "service_extension", #cfi not configured + "uri_permission_mgr", #cfi not configured + "appmgr_test_source", #cfi not configured + "appkit_delegator", #cfi not configured + "appkit_manager_helper", #cfi not configured + "continuation_ipc", #cfi not configured + "abilityms_test_source", #cfi not configured + "data_ability_helper", #cfi not configured + "application_context_manager", #cfi not configured + "service_extension_module", #cfi not configured + "ability_business_error", #cfi not configured + "dialog_request_callback", #cfi not configured + "ui_extension", #cfi not configured + "ui_extension_module", #cfi not configured + "share_extension", #cfi not configured + "action_extension", #cfi not configured + "share_extension_module", #cfi not configured + "auto_startup_callback", #cfi not configured + "action_extension_module", #cfi not configured + "auto_fill_extension", #cfi not configured + "auto_fill_extension_module", #cfi not configured + "abilityms", #cfi not configured + "aakit_mock", #cfi not configured + "appexecfwk_appmgr_mock", #cfi not configured + "perm_verification", #cfi not configured + "appexecfwk_bundlemgr_mock", #cfi not configured + "event_report", #cfi not configured + "task_handler_wrap", #cfi not configured + "app_util", #cfi not configured + "dataobsms", #cfi not configured + "libappms", #cfi not configured + "libupms", #cfi not configured + "child_process_manager", #cfi not configured + "dataobsms_static", #cfi not configured + "insightintentcontext", #cfi not configured + "abilitycontext_napi", #cfi not configured + "libupms_static", #cfi not configured + "abilitydelegatorregistry_napi", #cfi not configured + "autofillextensionability_napi", #cfi not configured + "caller_napi", #cfi not configured + "embeddableuiability_napi", #cfi not configured + "featureability", #cfi not configured + "abilitydelegatorregistry", #cfi not configured + "insightintentexecutor_napi", #cfi not configured + "dialogrequest_napi", #cfi not configured + "datauriutils", #cfi not configured + "appmanager_napi", #cfi not configured + "errormanager_napi", #cfi not configured + "particleability", #cfi not configured + "serviceextensioncontext_napi", #cfi not configured + "uripermissionmanager_napi", #cfi not configured + "wantagent", #cfi not configured + "errormanager", #cfi not configured + "abilityconstant_napi", #cfi not configured + "contextconstant_napi", #cfi not configured + "callee_napi", #cfi not configured + "actionextensionability_napi", #cfi not configured + "extensioncontext_napi", #cfi not configured + "insightintentdriver_napi", #cfi not configured + "abilityconstant", #cfi not configured + "missionmanager", #cfi not configured + "childprocessmanager_napi", #cfi not configured + "missionmanager_napi", #cfi not configured + "testrunner_napi", #cfi not configured + "ability_napi", #cfi not configured + "abilitystagecontext_napi", #cfi not configured + "serviceextensionability_napi", #cfi not configured + "uiextensioncontext_napi", #cfi not configured + "distributedmissionmanager", #cfi not configured + "abilitymanager_napi", #cfi not configured + "autofillmanager_napi", #cfi not configured + "uiability", #cfi not configured + "configurationconstant_napi", #cfi not configured + "serviceextensionability", #cfi not configured + "extensionability_napi", #cfi not configured + "insightintent_napi", #cfi not configured + "abilitymanager", #cfi not configured + "childprocess_napi", #cfi not configured + "dialogsession_napi", #cfi not configured + "configurationconstant", #cfi not configured + "autostartupmanager", #cfi not configured + "abilitystage", #cfi not configured + "context_napi", #cfi not configured + "apprecovery_napi", #cfi not configured + "uiextensionability_napi", #cfi not configured + "wantconstant", #cfi not configured + "autofillextensioncontext_napi", #cfi not configured + "embeddableuiabilitycontext_napi", #cfi not configured + "abilitystage_napi", #cfi not configured + "featureability_napi", #cfi not configured + "insightintentcontext_napi", #cfi not configured + "wantconstant_napi", #cfi not configured + "autostartupcallback", #cfi not configured + "applicationcontext_napi", #cfi not configured + "appmanager", #cfi not configured + "quickfixmanager_napi", #cfi not configured + "shareextensionability_napi", #cfi not configured + "libsrms", #cfi not configured + "module_test_dump_util_lib", #cfi not configured + "appmgr_mst_source", #cfi not configured + "freeze_util", #cfi not configured + "appmgr_test_service", #cfi not configured + "arkui_mock", #cfi not configured + "sa_mgr_mock", #cfi not configured + "wantagent_napi", #cfi not configured + "abilitylifecyclecallback", #cfi not configured +] + +# The list contains both part name that need to enable cfi and disable debug mode, and corresponding bypass_xxx list that bypass the cfi check +enable_cfi_part_and_bypass_list = [ + # enabled in OH4.0 + [ + "audio_framework", + bypass_audio_framework, + ], + [ + "media_foundation", + bypass_histreamer, + ], + [ + "av_session", + bypass_av_session, + ], + [ + "huks", + bypass_huks, + ], + [ + "certificate_manager", + bypass_certificate_manager, + ], + [ + "image_framework", + bypass_image_framework, + ], + [ + "media_library", + bypass_media_library, + ], + [ + "user_file_service", + bypass_user_file_service, + ], + [ + "contacts_data_hap", + bypass_contacts_data_hap, + ], + [ + "crypto_framework", + bypass_crypto_framework, + ], + [ + "wpa_supplicant", + bypass_wpa_supplicant, + ], + [ + "netmanager_base", + bypass_netmanager_base, + ], + [ + "camera_framework", + bypass_camera_framework, + ], + [ + "player_framework", + bypass_player_framework, + ], + [ + "screenlock_mgr", + bypass_screenlock_mgr, + ], + [ + "nfc", + bypass_nfc, + ], + [ + "wifi", + bypass_wifi, + ], + [ + "dsoftbus", + bypass_dsoftbus, + ], + [ + "hilog", + bypass_hilog, + ], + [ + "bluetooth", + bypass_bluetooth, + ], + [ + "bluetooth_service", + bypass_bluetooth_service, + ], + + # enabled in OH4.1 + [ + "device_security_level", + bypass_device_security_level, + ], + [ + "face_auth", + bypass_face_auth, + ], + [ + "fingerprint_auth", + bypass_fingerprint_auth, + ], + [ + "pin_auth", + bypass_pin_auth, + ], + [ + "user_auth_framework", + bypass_user_auth_framework, + ], + [ + "enterprise_device_management", + bypass_enterprise_device_management, + ], + [ + "wallpaper_mgr", + bypass_wallpaper_mgr, + ], + [ + "resource_schedule_service", + bypass_resource_schedule_service, + ], + [ + "data_object", + bypass_data_object, + ], + [ + "device_auth", + bypass_device_auth, + ], + [ + "data_share", + bypass_data_share, + ], + [ + "time_service", + bypass_time_service, + ], + [ + "imf", + bypass_imf, + ], + [ + "location", + bypass_location, + ], + [ + "dmsfwk", + bypass_dmsfwk, + ], + [ + "usb_manager", + bypass_usb_manager, + ], + [ + "sensor", + bypass_sensor, + ], + [ + "battery_manager", + bypass_battery_manager, + ], + [ + "battery_statistics", + bypass_battery_statistics, + ], + [ + "display_manager", + bypass_display_manager, + ], + [ + "power_manager", + bypass_power_manager, + ], + [ + "thermal_manager", + bypass_thermal_manager, + ], + [ + "device_status", + bypass_device_status, + ], + [ + "motion", + bypass_motion, + ], + [ + "spatial_awareness", + bypass_spatial_awareness, + ], + [ + "algorithm", + bypass_algorithm, + ], + [ + "window_manager", + bypass_window_manager, + ], + [ + "qos_manager", + bypass_qos_manager, + ], + [ + "call_manager", + bypass_call_manager, + ], + [ + "cellular_call", + bypass_cellular_call, + ], + [ + "core_service", + bypass_core_service, + ], + [ + "rill_adapter", + bypass_rill_adapter, + ], + [ + "sms_mms", + bypass_sms_mms, + ], + [ + "state_registry", + bypass_state_registry, + ], + [ + "telephony_data", + bypass_telephony_data, + ], + [ + "common_event_service", + bypass_common_event_service, + ], + [ + "distributed_notification_service", + bypass_distributed_notification_service, + ], + [ + "eventhandler", + bypass_eventhandler, + ], + [ + "os_account", + bypass_os_account, + ], + [ + "access_token", + bypass_access_token, + ], + [ + "dupdate_engine", + bypass_dupdate_engine, + ], + [ + "input", + bypass_input, + ], + [ + "device_attest", + bypass_device_attest, + ], + [ + "perferences", + bypass_perferences, + ], + [ + "relational_store", + bypass_relational_store, + ], + [ + "miscdevice", + bypass_miscdevice, + ], + [ + "app_file_service", + bypass_app_file_service, + ], + [ + "file_api", + bypass_file_api, + ], + [ + "storage_service", + bypass_storage_service, + ], + [ + "scene_board_ext", + bypass_scene_board_ext, + ], + [ + "background_task_mgr", + bypass_background_task_mgr, + ], + [ + "device_usage_statistics", + bypass_device_usage_statistics, + ], + [ + "efficiency_manager", + bypass_efficiency_manager, + ], + [ + "efficiency_manager_ext", + bypass_efficiency_manager_ext, + ], + [ + "frame_aware_sched", + bypass_frame_aware_sched, + ], + [ + "memmgr", + bypass_memmgr, + ], + [ + "memmgr_plugin", + bypass_memmgr_plugin, + ], + [ + "work_scheduler", + bypass_work_scheduler, + ], + [ + "accessibility", + bypass_accessibility, + ], + [ + "ffrt", + bypass_ffrt, + ], + [ + "advertising", + bypass_advertising, + ], + [ + "oaid", + bypass_oaid, + ], + [ + "init", + bypass_init, + ], + [ + "bundle_framework", + bypass_bundle_framework, + ], + [ + "ability_runtime", + bypass_ability_runtime, + ], +] + +# The list of part name that need to enable intsan +enable_intsan_part_list = [] + +# The list of build target that bypass the intsan check +bypass_intsan_target_list = [] diff --git a/oriole/updater_config/build_cfg.gni b/oriole/updater_config/build_cfg.gni new file mode 100644 index 0000000000000000000000000000000000000000..dc2948e9e0ac2ed7585cf4bf24a22c6904904956 --- /dev/null +++ b/oriole/updater_config/build_cfg.gni @@ -0,0 +1,14 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# 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. + +import("//build/ohos.gni") diff --git a/oriole/wm_config/BUILD.gn b/oriole/wm_config/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..c6554d1170fb0c6dfe2c15a7acd6f9d3b411851f --- /dev/null +++ b/oriole/wm_config/BUILD.gn @@ -0,0 +1,29 @@ +# Copyright (c) 2022 Huawei Device Co., Ltd. +# 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. + +import("//build/ohos.gni") + +import("//build/ohos.gni") + +ohos_prebuilt_etc("window_manager_config") { + source = "window_manager_config.xml" + install_enable = true + relative_install_dir = "window/resources" + part_name = "product_oriole" +} + +group("wm_config") { + deps = [ + ":window_manager_config" + ] +} diff --git a/oriole/wm_config/window_manager_config.xml b/oriole/wm_config/window_manager_config.xml new file mode 100644 index 0000000000000000000000000000000000000000..ab9c0357520e6310104b0132e878d4a3bccdf15d --- /dev/null +++ b/oriole/wm_config/window_manager_config.xml @@ -0,0 +1,66 @@ + + + + + + + floating fullscreen + + + + + 150 + + + + + 0.7 0.7 + + 0 0 1 0 + + 0 0 + + 0 + + + + + + 150 + + 150 + + 0.2 0.0 0.2 1.0 + + + + + + + 200 + + + + + 1 + + 0 + +