summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-10-25dragonboard: power: Add the PowerHAL skeletonthermal-hal-upstreamDaniel Lezcano
The following changes provide a power HAL skeleton. The goal of this skeleton is to evolve in order to provide as much functionalities as possible in a generic manner. Despite it is a skeleton, the implementation provides a set of advanced features we can easily enable. 1. Boost actions basically do nothing. But the timer mechanism is implemented so any action can automatically disable itself after a specified duration. As per today the boost actions are not specified by the platform, thus it is a zero boost duration. The meaning of a zero boost is no timeout for the boost. Consequently, if the system does not disable the boost, the system will stay in a higher power consumption state. For this reason, if no duration is provided, the power HAL will set a default duration anyway. 2. Mode actions do nothing except setting a zero latency when receiving the LAUNCH mode notification. That is done basically for having a default behavior for this mode but it is subject to change. 3. Hint sessions are created but no actions is done when created. This code is candidate for platform specific optimizations. The run duration are monitored with an exponential moving average algorithm computing on the fly the intervals between the tasks. Platform specific code can take decisions based on this information. 4. A power/performance library is integrated in the power HAL and hopefully it can continue to evolve in the future as an external project with more features. Nevertheless, the library provides the API to set/get the frequency as well as setting the min and max frequency. The CPU is considered as a device so the API is unified between CPUs and devices. In addition it allows to act on the device latencies. As far as I can tell, with the thermal HAL and the power HAL implemented for the dragonboard, there is almost enough material to enable the ADPF. However, given the dragonboard is an EVB platform, it does not have a skin temperature sensor or a slow moving sensor identified yet. Thus the thermal headroom can not be computed as it relies on the skin temperature sensor type. Change-Id: I8a860992a4a673794a5003486da3deed0f28dd06 Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
2023-10-25dragonboard: Fix Lint warningsDaniel Lezcano
Change-Id: Ic507091214f058d4a03b49a10ae9b19ccf6cd6d3 Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
2023-10-24Add a generic thermal HALDaniel Lezcano
This change brings the generic thermal HAL. These are coming from different git trees merged into this single change. - https://git.linaro.org/power/libthermal.git - https://git.linaro.org/power/android-power-thermal.git It creates device/linaro/dragonboard/shared with the following hierarchy: shared | `- thermal | `- etc | `- hal | `- lib | `- sepolicy The 'etc' contains the thermal configuration for DB845c (aka RB3). The port to RB5 must create a similar configuration file. Assuming it will be very close to RB3, that should be trivial to create it. The thermal HAL is designed to be as generic as possible in order to be reused by any platforms in the future. The thermal monitoring daemon is expecting to get a SKIN temperature sensor. As the RB3/RB5 are evaluation platform there is no such a sensor on the board so arbitrarly the configuration says the SKIN sensor is the cluster0. But as this one has fast temperature transitions, a more convenient sensor may be used later (temperature speed ~1°C / sec) The in-kernel thermal framework provides more events than what Android supports like thermal zone creation or deletion. However in the future, those may be supported, so the thermal HAL has the stubs to be filled with the logic. The code is documented, anyone interested in using the generic thermal HAL can easily fetch the code and understand the purpose of each function. Nevertheless, the thermal HAL being designed to be generic, the changes should end up in the common trunk. Change-Id: I12aa7719248b2feb36fce9488c560557c5323c89 Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> [AmitP: Restructured the original patch, fixed selinux policies and added check to disable this HAL for v5.4 kernel version. Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-10-18linaro_swr: Make it a 64bit only build targetAmit Pundir
Make this experimental linaro_swr-userdebug build a 64bit only build target. Change-Id: I59e51223e6194f72997efe952ef2c9787a8a0f90 Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-10-18graphics: swangle: Add debug.hwui.renderer=skiagl propertyAmit Pundir
It fixes the visual artifacts and glitches we see on Dragonboards booting with software rendering. Change-Id: If5f106114662ed2c46cf28cda585ec6f34898758 Suggested-by: Jason Macnak <natsu@google.com> Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-10-17Merge "graphics: mesa: Add ro.hardware.egl=mesa" into mainTreehugger Robot
2023-10-15graphics: mesa: Add ro.hardware.egl=mesaAmit Pundir
A recent AOSP/main change has put a hard dependency on ro.hardware.egl or equivalent property being set, otherwise it fails to boot successfully: F DEBUG : Cmdline: /system/bin/surfaceflinger F DEBUG : pid: 672, tid: 677, name: surfaceflinger >>> /system/bin/surfaceflinger <<< F DEBUG : uid: 1000 F DEBUG : tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE) F DEBUG : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr -------- F DEBUG : Abort message: 'couldn't find an OpenGL ES implementation, make sure one of persist.graphics.egl, ro.hardware.egl and ro.board.platform is set' Change-Id: Ifa82dd3ea480f88b3c2646c6ca40a99d9ef52849 Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-10-12dragonboards: fix boot and vendor_boot partition sizesAmit Pundir
It should be 96MB instead of 96GB :facepalm: Change-Id: If6671795f703144fd254f16039786e87ada83dff Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-09-18linaro_swr: A generic build target using software rendering am: b2534ba966Amit Pundir
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2606600 Change-Id: I26d75aecc8c49ec47047359989d5b96c8ec83071 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-14sepolicy: minigbm_msm: fix vendor.minigbm.debug prop access denials am: ↵Amit Pundir
4746684811 Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2752086 Change-Id: I0f15d19e69098b725164dadcb046d53106228631 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-14linaro_swr: A generic build target using software renderingAmit Pundir
linaro_swr is an attempt to prepare a generic arm64 build target booting with software rendering support SwANGLE i.e. GLES implementation (ANGLE) on top of SwiftShader’s vulkan (Pastel) implementation. Though it is developed and tested for Qcom target devices for now, but the plan is to make it generic enough to boot on any generic arm64 device. Change-Id: I135b4d2148330368ff298cb5d4bd290a67a94422 Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-09-14sepolicy: minigbm_msm: fix vendor.minigbm.debug prop access denialsAmit Pundir
Change-Id: I2de2fe44f5d105f68eef7353dc6c902a61ff765a Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-09-13dragonboards: refactor graphics configs to independent fragments am: 6749c910f3Amit Pundir
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2750582 Change-Id: Ic17049090abf87693c1f4253d13f9ab904fb5679 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-13dragonboards: refactor graphics configs to independent fragmentsAmit Pundir
Breakdown graphics configs to project specific fragments and include them in target device config files individually. It is the first step in cherry-picking the board specific features/projects in the future target configuration(s). Change-Id: If4aec9b7c789a243b98fcce8b4a4b6fcfd828c0a Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-09-01rb5: Set Ethernet MAC address on boot am: a961f043aeAmit Pundir
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2737313 Change-Id: Iab22364efcac98ab32f738d9e560ea3371f6a90d Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-01rb5: Set Ethernet MAC address on bootAmit Pundir
Just like DB845c devboards, RB5 do not have unique Ethernet MAC addresses. All the boards share the same MAC address and it cause problems while running CTS tests in the lab with multiple RB5 boards connected. So set the Ethernet MAC address based on board's unique serial number as we do for DB845c. Change-Id: I103e18c34a34c4d36d6cc71e7a7f964bcd0417b4 Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-08-17dlkm_loader: Add vendor_ramdisk modules.blocklist am: f30799b08bAmit Pundir
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2711578 Change-Id: Ief7808d83d881c00174857e2c56fe9ec4e2f5313 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-08-17device-common: TARGET_USES_GKI is always true am: 07776a385fAmit Pundir
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2711577 Change-Id: I2d5d232425a907253b5580b155a7cf1a0286f597 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-08-17dlkm_loader: Add vendor_ramdisk modules.blocklistAmit Pundir
This is a list of kernel modules that are known to be broken on Dragonboards and should not be loaded automatically. Suggested-by: Ramji Jiyani <ramjiyani@google.com> Signed-off-by: Amit Pundir <amit.pundir@linaro.org> Change-Id: Ia179ce34e91bf994bb4c9b16ab76a9b8357d2e90
2023-08-16device-common: TARGET_USES_GKI is always trueAmit Pundir
TARGET_USES_GKI is always true for all supported Android Common Kernel versions as well as local upstream builds. Hence remove this extra check. Change-Id: Icb4490c87832fec554f29d19361c97bfd6529e92 Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-08-01dragonboards: Enable system_dlkm partition support am: b0274055b8Amit Pundir
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2686346 Change-Id: I9e7fd860ae854ea70cb75debc8320ee20d083091 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-08-01dragonboards: Enable system_dlkm partition supportHEADmasterAmit Pundir
Enabling system_dlkm partition support. We plan to use it to flash and use system_dlkm.img prebuilt from ci.android.com directly. For now this partition is just a stub or place holder while we segregate vendor kernel modules into vendor_ramdisk and vendor_dlkm groups. We are re-using dlkm_vendor service, hosted by Cuttelfish project, which will take care of modprobing kernel modules. Change-Id: I7291fcd430ec76e4f33c9d2d23c4ee8aef159c76 Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-07-25product.prop: Update bluetooth properties am: 990b8aaa8eAmit Pundir
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2675416 Change-Id: I1e3ba9cffcde754be3bb364e42e715d513751f8e Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-25product.prop: Update bluetooth propertiesAmit Pundir
Disable LeAudio related profile which are not supported. Fixes CtsBluetoothTestCases failures. Change-Id: I4eb615895c8dfcfba9a3fbd46d41ec49fcd057c1 Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-07-19utils: eth_mac_addr: Refactor ethernet mac addr script am: e0b877ac38Amit Pundir
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2664199 Change-Id: I393ef788434af4f7264560e437b0c6d8b91c6a2a Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-19utils: bdaddr: Fallback to bootconfig to read serialno am: bd160522bfAmit Pundir
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2664198 Change-Id: I897bc60e57c3c8589193995f76dd2de57652fd3b Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-19utils: eth_mac_addr: Refactor ethernet mac addr scriptAmit Pundir
Refactored the scripts which we use on DB845c to set Ethernet MAC address. Updated the .sh script to fall back to parsing bootconfig file to lookup androidboot.serialno bootarg, if it is not found in /proc/cmdline (boot image header v4 for example). Fixed a typo s/db45c/db845c in .rc script which was blocking this service to run. Renamed the script from eth_mac_addr to set_ethaddr to follow the nomenclature we have used everywhere else and moved them to common shared/utils/ directory. And updated the sepolicies accordingly. Change-Id: Ia25e464b7c13934ffd8ab66a6aa2d892d7cd5a7b Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-07-19utils: bdaddr: Fallback to bootconfig to read serialnoAmit Pundir
In boot image header v4 builds, androidboot.* bootargs are part of bootconfig (/proc/bootconfig). So fall back to parsing bootconfig file to lookup androidboot.serialno bootarg, if it is not found in /proc/cmdline. Change-Id: Ie28aed52c379bd02aa0d50d31bbbe0982ed9b5b4 Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-07-17Merge "db845c/rb5: Make version 4 as the default boot image header" into ↵Treehugger Robot
main am: cf0c9fe4e3 Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2647984 Change-Id: Ifcfeb7aa0b313f3e01ee19e1d0e45c45e78fe652 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-17Merge "db845c/rb5: Make version 4 as the default boot image header" into mainTreehugger Robot
2023-07-16utils: bdaddr: Add service to set Bluetooth device (MAC) address am: f70f12a826Stephan Gerhold
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2655101 Change-Id: I181ab369fb594bbf8a5e9fb51635865b5922f8aa Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-14Empty Merge Android U (ab/10368041)Xin Li
Bug: 291102124 Merged-In: I4fdcf0df04b3ed07ef473cea3f6181c5a378616b Change-Id: I4da78d0f7a1a3af575bc0dc7b54539adeffc63ac
2023-07-14utils: bdaddr: Add service to set Bluetooth device (MAC) addressStephan Gerhold
The Bluetooth chip does not come with a unique Bluetooth device (MAC) address configured out of the box. This means that we manually need to configure the device address. Otherwise BT will stop working from v6.5 kernel version onwards. Reference: https://bugs.linaro.org/show_bug.cgi?id=5998 Link: https://github.com/me176c-dev/android_device_asus_K013/commit/cbb7066 [AmitP: Kanged the service from above link, updated the commit message, built an rc and shell script around this service, and added SELinux policies.] Signed-off-by: Amit Pundir <amit.pundir@linaro.org> Change-Id: I79a364917e0a4d879e4319b45b4c0f7cc7df83d3
2023-07-12Rename qcom folder to utils am: 547ae5f4d6Amit Pundir
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2655100 Change-Id: I5f39c85fcfed69304aa959e920437fb65be1432a Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-12Rename qcom folder to utilsAmit Pundir
We have used qcom/ folder to host various services, scripts and utilites, and naming the folder to qcom/, to begin with, was very shortsighted from my end. So we are renaming it to utils/ and moving it under a new shared/ folder which should hopefully be our go to destination for similar common tools/HALs going forward. Change-Id: I15fe45dbe5bc4752d6a2ee87a3fbed4924a66f08 Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-07-04db845c/rb5: Make version 4 as the default boot image headerAmit Pundir
..unless booting with android-5.4 kernel version because android11-5.4 do not support bootconfig. Change-Id: I160a179983f7c4a6613e601f5c1bbfd183b6960d Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-06-08db845c/rb5: Switch to android-6.1 as the default kernel version am: ↵Amit Pundir
7652f47a76 am: cf31160181 am: a76d8c74ad Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2619251 Change-Id: I4fdcf0df04b3ed07ef473cea3f6181c5a378616b Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-08db845c/rb5: Switch to android-6.1 as the default kernel version am: ↵Amit Pundir
7652f47a76 am: cf31160181 Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2619251 Change-Id: I18df8bf0323358e09732c8b5f1982f0f93ae03e6 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-08db845c/rb5: Switch to android-6.1 as the default kernel version am: 7652f47a76Amit Pundir
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2619251 Change-Id: I0aa4da45577dcdc27ad9e51a0614074bcab25781 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-07db845c/rb5: Switch to android-6.1 as the default kernel versionAmit Pundir
Switch DB845c and RB5 to using android-6.1 prebuilt GKI binaries by default. Change-Id: Ica022c3803eacbffc66baa93417eb8ddb931ef39 Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-06-05dragonboards: fstab: Use erofs for read-only partitions am: 3d8b3c647f am: ↵Amit Pundir
2b830ab352 am: e8e524fc9b Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2615229 Change-Id: I325498426ae27e50c6e118588ed5d073d1258abf Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-05dragonboards: fstab: Use erofs for read-only partitions am: 3d8b3c647f am: ↵Amit Pundir
2b830ab352 Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2615229 Change-Id: I6dbee79c284b001a3a9599407eed88d69bbae356 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-05dragonboards: fstab: Use erofs for read-only partitions am: 3d8b3c647fAmit Pundir
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2615229 Change-Id: I188e08c31abfc476890b24f90efeba00eb3e6ac3 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-05dragonboards: fstab: Use erofs for read-only partitionsAmit Pundir
Change-Id: I795117a5f3e8099ae7781ce5d01a2e328573bc23 Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-05-18dragonboards: Update vendor-package to 20230510 release am: 38e2b96822 am: ↵Amit Pundir
6597705eaf am: d4217e8889 Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2586026 Change-Id: I7cf764b07505138c39b73492601c05d32b0094a4 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-18dragonboards: Update vendor-package to 20230510 release am: 38e2b96822 am: ↵Amit Pundir
6597705eaf Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2586026 Change-Id: I5a3ab68e84659a6fecca4546989d001a88337854 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-18dragonboards: Update vendor-package to 20230510 release am: 38e2b96822Amit Pundir
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2586026 Change-Id: I3dcbfc24987b933a6caa0be56258dc6df986805d Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-11dragonboards: Update vendor-package to 20230510 releaseAmit Pundir
Update to the 20230510 release, which update mesa prebuilt binaries to mesa-23.0.2 release tag. Note: These binaries are built with android13-gsi branch because the binaries built with AOSP (as of 13-April-2023) ain't stable and are running into crashes like this one, https://gitlab.freedesktop.org/mesa/mesa/-/issues/8776, which can be reproduced by running "atest CtsUiRenderingTestCases" as well. vendor-package binary: https://releases.linaro.org/android/aosp-linaro-vendor-package/extract-linaro_devices-20230510.tgz vendor-package source: https://gitlab.com/LinaroLtd/linaro-aosp/linaro-vendor-package/-/commits/master Change-Id: I6b54cd04039b4cd05cd80e7da4dfa371b7154558 Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2023-04-25Remove 64-bit binder ABI setting. am: 86f25c1d4b am: 9964092da8 am: a5a0b99a4dSteven Moreland
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2559770 Change-Id: I465412bf9671b24aeae7e1816042b05f921db580 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-25Remove 64-bit binder ABI setting. am: 86f25c1d4b am: 9964092da8Steven Moreland
Original change: https://android-review.googlesource.com/c/device/linaro/dragonboard/+/2559770 Change-Id: I595cd466c718f43185fc3946106f86ded1e26137 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>