diff --git a/audio/audio_effects.xml b/audio/audio_effects.xml index 484b30a..60c5b5c 100644 --- a/audio/audio_effects.xml +++ b/audio/audio_effects.xml @@ -11,6 +11,7 @@ + @@ -29,6 +30,7 @@ + diff --git a/audio/audio_policy_configuration.xml b/audio/audio_policy_configuration.xml index df952e1..d9e49a4 100644 --- a/audio/audio_policy_configuration.xml +++ b/audio/audio_policy_configuration.xml @@ -50,6 +50,21 @@ samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + + + + + + + sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/> + sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/> + sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/> + sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/> + sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/> + sources="primary output,deep_buffer,direct_pcm,voip_rx"/> + sources="primary output,deep_buffer,direct_pcm,voip_rx"/> + sources="primary output,deep_buffer,direct_pcm,voip_rx"/> + sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/> + sources="primary output,deep_buffer,direct_pcm,compressed_offload,hifi_playback,voip_rx"/> + sources="primary output,deep_buffer,direct_pcm,compressed_offload,hifi_playback,voip_rx"/> + sources="primary output,deep_buffer,direct_pcm,compressed_offload"/> - 1,-4000 - 70,-1600 - 84,-800 + 1,-5300 + 70,-2390 + 84,-1010 100,0 - 1,-3200 - 33,-2700 - 66,-2200 - 100,-1700 + 1,-3800 + 33,-3300 + 66,-2800 + 100,-2300 @@ -62,12 +62,12 @@ - 1,-5000 - 30,-3300 - 43,-2000 - 65,-1200 - 85,-600 - 93,-300 + 1,-6400 + 30,-4300 + 43,-2600 + 65,-1400 + 85,-750 + 93,-500 100,0 diff --git a/audio/sku_yupik/audio_platform_info.xml b/audio/sku_yupik/audio_platform_info.xml index a39a1c2..e61ad5b 100644 --- a/audio/sku_yupik/audio_platform_info.xml +++ b/audio/sku_yupik/audio_platform_info.xml @@ -84,6 +84,7 @@ + @@ -155,6 +156,7 @@ + @@ -351,6 +353,7 @@ + @@ -366,6 +369,7 @@ + diff --git a/audio/sku_yupik/mixer_paths.xml b/audio/sku_yupik/mixer_paths.xml index 735c770..074103b 100644 --- a/audio/sku_yupik/mixer_paths.xml +++ b/audio/sku_yupik/mixer_paths.xml @@ -165,8 +165,6 @@ - - @@ -281,7 +279,6 @@ - @@ -318,8 +315,6 @@ - - @@ -446,17 +441,6 @@ - - - - - - - - - - - @@ -467,6 +451,9 @@ + + + @@ -508,6 +495,21 @@ + + + + + + + + + + + + + + + @@ -544,7 +546,6 @@ - @@ -615,7 +616,6 @@ - @@ -699,7 +699,6 @@ - @@ -756,7 +755,6 @@ - @@ -908,7 +906,6 @@ - @@ -933,7 +930,6 @@ - @@ -958,7 +954,6 @@ - @@ -983,7 +978,6 @@ - @@ -1161,7 +1155,6 @@ - @@ -1190,7 +1183,6 @@ - @@ -1221,7 +1213,6 @@ - @@ -1250,7 +1241,6 @@ - @@ -1271,7 +1261,6 @@ - @@ -1326,7 +1315,6 @@ - @@ -1351,6 +1339,10 @@ + + + + @@ -1369,7 +1361,6 @@ - @@ -1590,10 +1581,18 @@ + + + + + + + + @@ -1606,6 +1605,10 @@ + + + + @@ -1638,6 +1641,10 @@ + + + + @@ -1661,6 +1668,7 @@ + @@ -1790,9 +1798,6 @@ - - - @@ -1931,8 +1936,9 @@ - + + @@ -1954,7 +1960,6 @@ - @@ -1976,6 +1981,7 @@ + @@ -2065,6 +2071,10 @@ + + + + diff --git a/resource-overlay/berlna/Frameworks/res/values/config.xml b/resource-overlay/berlna/Frameworks/res/values/config.xml index 7d9e192..0c17871 100644 --- a/resource-overlay/berlna/Frameworks/res/values/config.xml +++ b/resource-overlay/berlna/Frameworks/res/values/config.xml @@ -127,11 +127,10 @@ @see https://www.w3.org/TR/SVG/paths.html#PathData --> - M 0,0 - h -35 - v 90 - h 70 - v -90 + M -50,0 + L 50,0 + L 50,115 + L -50,115 Z @@ -288,7 +287,7 @@ the framework from using higher refresh rates, even if display modes with higher refresh rates are available from hardware composer. Only has an effect if the value is non-zero. --> - 60 + 120 motorolaedge diff --git a/rootdir/bin/init.oem.fingerprint.overlay.sh b/rootdir/bin/init.oem.fingerprint.overlay.sh new file mode 100644 index 0000000..b44b0dc --- /dev/null +++ b/rootdir/bin/init.oem.fingerprint.overlay.sh @@ -0,0 +1,89 @@ +#!/vendor/bin/sh +# +# Identify fingerprint sensor model +# +# Copyright (c) 2019 Lenovo +# All rights reserved. +# +# Changed Log: +# --------------------------------- +# April 15, 2019 chengql2@lenovo.com Initial version +# April 28, 2019 chengql2 Add fps_id creating step +# December 2, 2019 chengql2 Store fps_id into persist fs, and identify sensor +# again when secure unit boots as factory mode. + +script_name=${0##*/} +script_name=${script_name%.*} +function log { + echo "$script_name: $*" > /dev/kmsg +} + +persist_fps_id=/mnt/vendor/persist/fps/vendor_id + +FPS_VENDOR_GOODIX=goodix +FPS_VENDOR_EGIS=egis +FPS_VENDOR_NONE=none + +function is_file_ready { + if [ "$(ls $1)" != "" ]; then + return 0 + fi + log "$0 - wait for $1 ..." + for i in $(seq 1 100); do + if [ "$(ls $1)" == "" ]; then + continue + fi + return 0 + done + log "$0 - timeout" + return 1 +} + +function ident_fps { + log "- install Goodix FPS kernel module" + insmod /vendor/lib/modules/goodix_fod_mmi.ko + + log "- identify Goodix fingerprint sensor" + is_file_ready /dev/goodix_fp + is_file_ready /vendor/firmware_mnt/image/goodixfp.mdt + /vendor/bin/hw/goodix_ident + if [ $? -eq 0 ]; then + log "ok" + echo $FPS_VENDOR_GOODIX > $persist_fps_id + return 0 + fi + + log "- uninstall Goodix FPS kernel module" + rmmod goodix_fod_mmi + + log "- install Egis FPS kernel module" + insmod /vendor/lib/modules/ets_fps_mmi.ko + echo $FPS_VENDOR_EGIS > $persist_fps_id + return 0 +} + +if [ ! -f $persist_fps_id ]; then + ident_fps + return $? +fi + +fps_vendor=$(cat $persist_fps_id) +if [ -z $fps_vendor ]; then + fps_vendor=$FPS_VENDOR_NONE +fi +log "FPS vendor: $fps_vendor" + +if [ $fps_vendor == $FPS_VENDOR_EGIS ]; then + log "- install EgisTech FPS kernel module" + insmod /vendor/lib/modules/ets_fps_mmi.ko + return $? +fi + +if [ $fps_vendor == $FPS_VENDOR_GOODIX ]; then + log "- install Goodix FPS kernel module" + insmod /vendor/lib/modules/goodix_fod_mmi.ko + return $? +fi + +ident_fps +return $? diff --git a/rootdir/bin/init.oem.fingerprint2.sh b/rootdir/bin/init.oem.fingerprint2.sh new file mode 100644 index 0000000..8f6d37a --- /dev/null +++ b/rootdir/bin/init.oem.fingerprint2.sh @@ -0,0 +1,109 @@ +#!/vendor/bin/sh +# +# Start indicated fingerprint HAL service +# +# Copyright (c) 2019 Lenovo +# All rights reserved. +# +# April 15, 2019 chengql2@lenovo.com Initial version +# December 2, 2019 chengql2 Store fps_id into persist fs + +script_name=${0##*/} +script_name=${script_name%.*} +function log { + echo "$script_name: $*" > /dev/kmsg +} + +persist_fps_id=/mnt/vendor/persist/fps/vendor_id +persist_fps_id2=/mnt/vendor/persist/fps/last_vendor_id +MAX_TIMES=20 + +if [ ! -f $persist_fps_id ]; then + log "warn: no associated persist file found" + return -1 +fi + +FPS_VENDOR_NONE=none +FPS_VENDOR_EGIS=egis +FPS_VENDOR_GOODIX=goodix + +prop_fps_status=vendor.hw.fingerprint.status +prop_persist_fps=persist.vendor.hardware.fingerprint + +FPS_STATUS_NONE=none +FPS_STATUS_OK=ok + +fps_vendor2=$(cat $persist_fps_id2) +if [ -z $fps_vendor2 ]; then + fps_vendor2=$FPS_VENDOR_NONE +fi +log "FPS vendor (last): $fps_vendor2" +fps_vendor=$(cat $persist_fps_id) +if [ -z $fps_vendor ]; then + fps_vendor=$FPS_VENDOR_NONE +fi +log "FPS vendor: $fps_vendor" + +if [ $fps_vendor == $FPS_STATUS_NONE ]; then + log "warn: boot as the last FPS" + fps=$fps_vendor2 +else + fps=$fps_vendor +fi + +for i in $(seq 1 2); do + setprop $prop_fps_status $FPS_STATUS_NONE + if [ $fps == $FPS_VENDOR_GOODIX ]; then + log "- start service 'goodix_hal'" + start goodix_hal + else + log "- start service 'ets_hal'" + start ets_hal + fi + + sleep 1.2 + fps_status=$(getprop $prop_fps_status) + if [ $fps_status == $FPS_STATUS_NONE ]; then + log "- wait for fingerprint HAL service ..." + for j in $(seq 1 100); do + fps_status=$(getprop $prop_fps_status) + if [ $fps_status != $FPS_STATUS_NONE ]; then + break + fi + sleep 0.2 + done + fi + log "status: $fps_status" + if [ $fps_status == $FPS_STATUS_OK ]; then + log "HAL success" + setprop $prop_persist_fps $fps + if [ $fps_vendor2 == $fps ]; then + return 0 + fi + log "- update FPS vendor (last)" + echo $fps > $persist_fps_id2 + log "- done" + return 0 + fi + + if [ $fps == $fps_vendor2 ]; then + if [ $fps == $FPS_VENDOR_GOODIX ]; then + rmmod goodix_fod_mmi + insmod /vendor/lib/modules/ets_fps_mmi.ko + fps=$FPS_VENDOR_EGIS + else + rmmod ets_fps_mmi + insmod /vendor/lib/modules/goodix_fod_mmi.ko + fps=$FPS_VENDOR_GOODIX + fi + log "- update FPS vendor" + echo $fps > $persist_fps_id + sleep 1 + else + log "error: HAL fail again" + setprop $prop_persist_fps $FPS_VENDOR_NONE + echo $FPS_VENDOR_NONE > $persist_fps_id + log "- done" + return 1 + fi +done diff --git a/rootdir/etc/init/hw/init.mmi.overlay.rc b/rootdir/etc/init/hw/init.mmi.overlay.rc index 73735e4..60d1b28 100644 --- a/rootdir/etc/init/hw/init.mmi.overlay.rc +++ b/rootdir/etc/init/hw/init.mmi.overlay.rc @@ -10,8 +10,7 @@ on early-init insmod /vendor/lib/modules/bm_adsp_ulog.ko insmod /vendor/lib/modules/mmi_charger.ko insmod /vendor/lib/modules/qti_glink_charger.ko - insmod /vendor/lib/modules/cirrus_wm_adsp.ko - insmod /vendor/lib/modules/cirrus_cs35l41.ko + insmod /vendor/lib/modules/aw882xx_k504.ko insmod /vendor/lib/modules/mmi_sys_temp.ko insmod /vendor/lib/modules/wl2864c.ko insmod /vendor/lib/modules/goodix_mmi.ko @@ -19,12 +18,10 @@ on early-init insmod /vendor/lib/modules/aw8695.ko insmod /vendor/lib/modules/cci_intf.ko insmod /vendor/lib/modules/qpnp_adaptive_charge.ko + insmod /vendor/lib/modules/5.4-gki/camera.ko + insmod /vendor/lib/modules/5.4-gki/aw8695.ko start vendor.mmi_modules -on fs - # Goodix fingerprint sensor GF3626 reuses the driver "goodix_fod_mmi.ko" - insmod /vendor/lib/modules/goodix_fod_mmi.ko - on post-fs # Sensors chown system system /sys/devices/platform/soc/a94000.spi/spi_master/spi0/spi0.0/touchscreen/NVT-ts/double_tap_enabled @@ -45,6 +42,7 @@ on post-fs-data # Param updater data for various modules mkdir /data/vendor/param 0775 system system mkdir /data/vendor/tzstorage/goodix 0770 system system + exec_start vendor.ident-fps-overlay-sh on early-boot # Goodix fingerprint @@ -52,26 +50,11 @@ on early-boot chmod 0664 /dev/goodix_fp on boot - # allow TCMD to access cci for OIS test - chmod 0660 /dev/cci_intf - chown system camera /dev/cci_intf - #change adsp pmic test command file access permission chown vendor_tcmd system /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/tcmd chown vendor_tcmd system /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/force_pmic_icl chmod 0660 /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/tcmd chmod 0660 /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/force_pmic_icl - # Touch game mode control - chown system system /sys/class/touchscreen/primary/rotate - chmod 0660 /sys/class/touchscreen/primary/rotate - chown system system /sys/class/touchscreen/primary/interpolation - chmod 0660 /sys/class/touchscreen/primary/interpolation - chown system system /sys/class/touchscreen/primary/edge - chmod 0660 /sys/class/touchscreen/primary/edge - chown system system /sys/class/touchscreen/primary/first_filter - chmod 0660 /sys/class/touchscreen/primary/first_filter - chown system system /sys/class/touchscreen/primary/sensitivity - chmod 0660 /sys/class/touchscreen/primary/sensitivity chown system system /sys/devices/platform/soc/a94000.i2c/i2c-2/2-0049/double_click chmod 0660 /sys/devices/platform/soc/a94000.i2c/i2c-2/2-0049/double_click chown system system /sys/devices/platform/soc/a94000.i2c/i2c-2/2-0049/single_click @@ -94,5 +77,25 @@ on property:sys.boot_completed=1 start capsense_reset on property:persist.vendor.paramfile.parse_panel=1 - write /sys/devices/platform/soc/soc:qcom,dsi-display-primary/dsi_display_parse_para "5" + write /sys/devices/platform/soc/soc:qcom,dsi-display-primary/dsi_display_parse_para "1" +service vendor.ident-fps-overlay-sh /vendor/bin/init.oem.fingerprint.overlay.sh + class core + user root + group drmrpc system + oneshot + disabled + +service vendor.ident-fps-sh /vendor/bin/init.oem.fingerprint.sh + class core + user root + group drmrpc system + oneshot + disabled + +service egis_ident /vendor/bin/egis_ident + class late_start + user system + group system + oneshot + disabled