device_google_raviole/conf
André Draszik e3f5d8ab1c powerhint: provide android-mainline versions for Oriole & Raven
The android-mainline kernel doesn't provide the scheduler vendor hooks,
and therefore the pixel drivers don't expose anything below
/proc/vendor_sched/. This causes powerpower-libperfmgr to emit *a lot*
of warnings to logcat regarding failures to write to nodes below
/proc/vendor_sched/.

As a solution, provide a -mainline version of powerhint.json for the
two platforms supported by android-mainline.
The new files are based on revision f56bbd1bfb ("disable vendor idle
balancer") of powerhint.json and have all nodes and actions referring
to /proc/vendor_sched/ removed using the following jq commands:
    for f in powerhint-oriole.json powerhint-raven.json ; do \
        fdst="$(basename "${f}" .json)-mainline.json"
        names=$(jq '."Nodes"[] | select(."Path" | startswith("/proc/vendor_sched/")).Name' "${f}" \
                | tr '\n' ' ' \
                | sed -e 's|" "|", "|g')
        jq '. | del( ."Actions"[] | select(."Node"==('"${names}"')))' "${f}" > "${fdst}"
        jq '. | del( ."Nodes"[] | select(."Path" | startswith("/proc/vendor_sched/")) )' "${fdst}" > "${fdst}2"
        mv "${fdst}2" "${fdst}"
    done

The -mainline version will be picked based on a boot property set by
the mainline kernel.

Bug: 265961701
Test: adb shell -nT getprop vendor.powerhal.config
      adb logcat -b all -D 'libperfmgr:V powerhal-libperfmgr:V *:S'
      m libperfmgr_test \
      && adb push \
             out/target/product/oriole/data/nativetest64/libperfmgr_test/libperfmgr_test \
             /data/libperfmgr_test \
      && adb shell /data/libperfmgr_test
Change-Id: Ice07444e38194e5fcf2127e935afdd4d29ff8e87
Signed-off-by: André Draszik <draszik@google.com>
2023-09-13 17:04:16 +00:00
..
init.oriole.rc powerhint: provide android-mainline versions for Oriole & Raven 2023-09-13 17:04:16 +00:00
init.raven.rc powerhint: provide android-mainline versions for Oriole & Raven 2023-09-13 17:04:16 +00:00
init.raviole.rc Remove rt_uclamp_min and sf_uclamp_min 2023-06-02 16:33:34 +00:00
init.slider.rc move insmod script to gs-common 2022-09-05 12:37:04 +08:00
init.whitefin.rc move insmod script to gs-common 2022-09-05 12:37:04 +08:00