Commit Graph

716 Commits

Author SHA1 Message Date
Arian
eef4080d27 android: merge_dtbs: Respect oem specific extra ids
Some OEMs add their own properties to avoid merging incompatible
overlays for different devices with the same QCOM soc.

Change-Id: Ic5b38a122173d8e9ecc1f0f399411cb37acf3150
2025-04-18 16:08:24 +08:00
Yumi Yukimura
1b1687b456 kernel: Add support for external kernel configs
For targets that uses mainline kernel, the kernel tree usually only
contains configs on top of the upstream repository.

In such case, if we put the configs in elsewhere, we can simply just
track the upstream kernel repo, without needing to import configs.

Example usage:

TARGET_KERNEL_CONFIG_EXT := \
    $(COMMON_PATH)/kconfig/platform_defconfig \
    $(COMMON_PATH)/kconfig/common-addons.config

TARGET_KERNEL_CONFIG_EXT += \
    $(DEVICE_PATH)/kconfig/device.config

Change-Id: I021ffb76d0c0612343cff7b5c81541c2b88ef7e6
2025-04-15 01:27:38 +00:00
Yumi Yukimura
f171568f8b kernel: Add support to append DTBs to kernel image
* Many Qualcomm targets that uses boot header v0 or v1
  have the DTBs appended to the end of kernel image.

* In downstream msm kernels up to msm-4.19, Appending DTBs
  is handled in the kernel tree. However, on msm-5.4 and
  newer msm kernels, and on mainline kernel, This is not
  supported.

* Normally, DTB processing depends on how the bootloader
  loads it and should not be handled in the kernel tree,
  so we handle it here.

* Instead of appending all DTBs by default, Get the list of
  DTBs that needs to be included from a variable, so that
  we don't need to modify dts Makefile to exclude unwanted
  DTBs, and we could also ensure the DTBs are appended in
  a specific order.

Change-Id: I603d1ebac5ee808bad045b85f9868d572d52cb80
2025-04-15 01:27:38 +00:00
Aaron Kling
16075eab65 kernel: Use correct recovery modules.load variable
Originally, BOARD_RECOVERY_RAMDISK_KERNEL_MODULES_LOAD was used, but
BOARD_RECOVERY_KERNEL_MODULES_LOAD is what build/make uses. Use the
proper variable by default and if it's not set, use the old variable.

Change-Id: I3522e4782ae56f67e49b234236fbb86c8ec65b92
2025-04-06 19:07:29 +00:00
Cosmin Tanislav
ae2f5b65e8 kernel: use DTBS_OUT variable
DTBS_OUT is set to $(DTB_OUT)/out, use it.

Change-Id: Id6ec8b1f32e4b54cd9c463c3af7146711a800d81
2025-04-05 19:47:13 +00:00
Michael Bestas
67492332e1 soong: move EGL display array config to select
Change-Id: Ia03dd6b49637ed3b7432df26824fcbf01d92106b
2025-04-03 20:48:03 +00:00
Michael Bestas
45b504a7e2 soong: move nvidia enhancements config to select
Original flag is still used by device specific makefile guards.

Change-Id: I528ee2a2a25680994561e4c3fc377f7b57106a89
2025-04-02 17:53:58 -05:00
Michael Bestas
c3c770de44 soong: move QTI surfaceflinger config to select
Change-Id: If98ed6feb18a5dea66857e507c5e4a369baa5a8b
2025-04-01 15:13:43 +00:00
Michael Bestas
2ef0da69c1 soong: drop librmnetctl config
Flag hasn't been ported since lineage-19.1.

Change-Id: I2078d19cc80e4b64b86e2aab0bd68d7ee0f14224
2025-04-01 13:46:57 +00:00
Michael Bestas
6df271a022 soong: move extended compress format config to select
Change-Id: Id56bad89607cd2961a571c148ec40e9334f0a6ce
2025-04-01 13:46:53 +00:00
Cosmin Tanislav
e19f41f91d soong: move vibrator effect stream config to select
Change-Id: I341733b822e7de2dd109eaa16910ad3357a1dfc6
2025-03-31 12:11:23 +00:00
Oliver Scott
8fbefea585 soong: Implement charge limit mode
Change-Id: Ic14335339528ae11ac25ae1d09bb705708c29008
2025-03-31 11:58:10 +00:00
LuK1337
309a7abb5e soong: generator: Update for BP1A
Change-Id: Icd8b04d2297a12a1dbbee1713e495949b7b2379a
2025-03-15 12:30:23 +02:00
borbelyvince
81d6c3cc92 Revert "config: Changes for libfmjni bp conversion"
This reverts commit d6777fa812.
Reason for revert: The soong namespaces can be removed after reworking
libfmjni to use select() with filegroups and header libs for qcom/slsi.
Broadcom is not used in any recent shipping device and mtk can continue
using prebuilt for now.

Change-Id: I078b321c7c55c3d7e5cd97e2664208c3d44f513a
2025-02-07 23:01:18 +00:00
dianlujitao
f5b67a8a82 kernel: sign GKI modules
Only signed GKI modules are permitted to export symbols listed in the
android/abi_gki_protected_exports file. Attempting to export these
symbols from an unsigned module will result in the module failing to
load, with a 'Permission denied' error message.

Change-Id: Ie15b00a6c288eda21b319eb0f735cf4f9e6e7933
2025-02-02 22:07:16 +08:00
dianlujitao
0c5ab30c05 kernel: preserve GKI modules in vendor modules.dep
modprobe won't lookup system_dlkm modules.dep when GKI modules are
required by vendor modules, so they'll fail to load.

Fixes: 259906daef ("kernel: consider gki modules when running depmod for vendor modules")
Change-Id: Ia5a77df91d84c78f76a03910178cc86db48724c8
2025-02-02 22:07:16 +08:00
dianlujitao
2f05d48814 kernel: break the build when depmod finds missing symbols
Change-Id: I033590d2309d4e8fbff3ab6b5a73eb903d5b3be9
2025-02-01 17:13:43 +00:00
dianlujitao
259906daef kernel: consider gki modules when running depmod for vendor modules
Change-Id: I6c2367b7d93a866039c15d4ace7baeb937cb490e
2025-02-01 17:13:43 +00:00
dianlujitao
382aba27b7 kernel: reduce the use of find when copying modules
Change-Id: I16879cd3295bbfc16c3d34c4e120dcde6e24a19e
2025-02-01 17:13:41 +00:00
Guru Das Srinagesh
8e2709c91e merge_dtbs: Craft unique name for final saved merged trees
Incorporate the hash of a combination of all msm-ids, board-ids, and
pmic-ids of the InnerMergedDeviceTree in the final filenames of the
saved InnerMergedDeviceTrees.

Change-Id: I629e1a274b23d71061c547578d1ddbcf92c8cf79
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
2025-01-30 19:16:33 +08:00
Guru Das Srinagesh
81c8cad9e8 merge_dtbs: Use logging and argparse
Use the logging module to log important information to various log
levels: info, debug, warning and error.
- Modify __str__ representations of classes DeviceTree and
  InnerMergedDeviceTree for readability in debug logs
- Make parse_dt_files() return instead of yield so as to order all the
  filename parsing at one go after the preceding log messages

Use the argparse module to specify script arguments cleanly. Also make
the corresponding change to merge_dtbs.sh to invoke this script with the
correct flags.

Change-Id: Id09d9d7b34cde60eff99876f0c0c4f6643852aee
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
2025-01-30 19:16:33 +08:00
Guru Das Srinagesh
bd92c42017 merge_dtbs.py: Print only basenames of dtb* files
When debugging issues with the script, it helps to not have in the
script's output the fully qualified path names of the DTB and DTBO files
being merged as they are very lengthy. Retain only the relevant parts of
the filnames - the basenames for better readability.

Change-Id: Ia18584fcf9ff173c4b22d4543c83c4091e15b8f8
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
2025-01-30 19:14:46 +08:00
Patrick Gaskin
1c00116c6e fixup! roomservice: Skip setting revision if it's the same as default
If the project remote starts with "aosp-", the revision already gets
removed, causing a KeyError.

Change-Id: Ie016f55d55f4cf64e66de529db9caca1de9b2e82
2025-01-23 07:34:46 +00:00
LuK1337
caae07034a roomservice: Skip setting revision if it's the same as default
Change-Id: I8bcb638c1c395ae460363c626be45727c10c6db7
2025-01-22 10:21:10 +01:00
LuK1337
ff19773ea4 soong: Make mkdir install dir optional
This prevents overriding commands error when device doesn't have it in
PRODUCT_PACKAGES.

Change-Id: Id4924ffe60d18ea54eb7c4dfa0d270ed2b00cef7
2025-01-19 01:21:54 +01:00
Luca Stefani
e0ff29e915 soong: Add mkdir module
Co-authored-by: LuK1337 <priv.luk@gmail.com>
Change-Id: I7b98cf5b120817a271036fca3aa0582d77861993
2025-01-18 12:45:58 +01:00
LuK1337
991fd49cd8 fixup! fixup! roomservice: Migrate from GitHub API to git ls-remote
Change-Id: Ide422d1b056816114c7e372bcd296dbf8675ec95
2025-01-07 01:48:23 +01:00
LuK1337
d5aa270f99 fixup! roomservice: Migrate from GitHub API to git ls-remote
Change-Id: I7a86c7d2344dd4cf1757ffea3c51c3dfc52c6e62
2025-01-07 01:27:43 +01:00
LuK1337
4de0265cdd roomservice: Migrate from GitHub API to git ls-remote
Change-Id: Ia62594dc0d350c2eaa93e9f02372443ac737abb7
2025-01-04 10:23:52 +01:00
LuK1337
ee73731e4e roomservice: Exit if get_default_or_fallback_revision() fails
This was accidentally broken in 8e47b888.

Change-Id: I86c986202afb30cba14b1a1378f8403e462d0e55
2025-01-02 10:24:02 +01:00
Chirayu Desai
0c5aab2704 repopick: unquote URL
Test: repopick -Q "status:open+-is:wip" works
Change-Id: I346c5c40e8197ad1c91235ee1cbacaa3d30c7b91
2024-12-22 17:42:42 +00:00
Michael Bestas
5bbc612621 fixup! build: Add privateremote helper
Change-Id: I09c52df9e9dc7c5a825e641d6299581432591920
2024-12-20 17:18:58 +00:00
Michael Bestas
5319975d22 soong: generator: Update for AP4A
Change-Id: I57d820cd25fa8fa4557f671510c39bfe9923845d
2024-12-19 23:28:24 +00:00
Michael Bestas
7cefcff4a6 build: Add privateremote helper
Change-Id: I8f406d397914836ac1ac12a50f56263cfcf85b55
2024-12-20 00:07:51 +02:00
LuK1337
be60f23b63 repopick: Use add_mutually_exclusive_group() where possible
Change-Id: I7e38e2371d075afd53200d60703eb4466fff07e3
2024-12-09 19:19:23 +01:00
Michael Bestas
8e7b7795df repopick: Add support for hashtags
Test: repopick -H redbull
Change-Id: I1522be31e547a7f8917223e7eeae4389de083227
2024-12-09 19:19:23 +01:00
Luca Stefani
87edd14894 Zap aapt_version_code_defaults
It was caused by package-cache in case Build.VERSION.INCREMENTAL
doesn't change across builds, which is always the case for local
builds, exporting BUILD_NUMBER to something != eng.$USER will fix
it the next build.

Change-Id: Ic602197e6711ced511a0b102b1140c5db4ec8397
2024-12-09 11:47:07 +00:00
Christian Hoffmann
621f14f2ce lineage: products: Add ATV x86_64 emulator targets
Change-Id: I2ab42a7800b9754e784b2bf5dad7e6fea839b8ff
2024-12-05 19:23:52 +01:00
Christian Hoffmann
00ca937549 lineage: products: Use 6.1 for atv x86
Kernel 6.6 is not currently set up for CONFIG_NETFILTER_XTABLES_COMPAT,
breaking 32-bit iptables userspace.

Change-Id: I79823ea1c66d841f204a1d3c241619abb51f9040
2024-12-05 15:07:58 +00:00
Alexander Martinz
8e47b88870 roomservice: check all device repositories
Some devices have the same codename but shipped a long time
ago and may not have a current branch set up.
Continue looking up all repositories until a match is found
or no repos are left to check.

For example:

  - android_device_amazon_thor
    - cm-14.1
  - android_device_xiaomi_thor
    - lineage-21.0

  - android_device_semc_zeus
    - jellybean
  - android_device_xiaomi_zeus
    - lineage-21.0

  - android_device_amazon_otter
    - cm-12.1
  - android_device_shift_otter
    - lineage-21.0

Change-Id: Icf9826b31efd872363fdfe73d5a71ff2d06cbe20
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
2024-12-04 16:58:36 +00:00
Michael Bestas
d6777fa812 config: Changes for libfmjni bp conversion
Change-Id: I666bdc4c1d0cdab4d2557c07f32466cceabe8439
2024-11-01 20:32:14 +00:00
LuK1337
426aa2d862 soong: Remove LD_SHIM_LIBS support
Change-Id: I4a45fdd9a140a95aa42861bf294bfb8e8bb91f34
2024-10-30 08:38:03 +01:00
Michael Bestas
dc34f77675 kernel: Nuke --cuda-path/--hip-path
Revert "kernel: Check HIP support of clang before disabling it"

This reverts commit 62c1374385.

Revert "kernel: Force disable LLVM HIP"

This reverts commit ef68678120.

Revert "kernel: Force disable LLVM CUDA"

This reverts commit ba14020f85.

Change-Id: I5cb2b4624eb0ec25dbc8c1b5888708d961ae59d7
2024-10-19 01:10:12 +02:00
Michael Bestas
e2610f23f2 build: Don't set a default fingerprint
Since ADDITIONAL_SYSTEM_PROPERTIES is being deprecated, this will
need to be handled in build/make and build/soong

Change-Id: Ib4925969f0d9f60ea5b30455806ff80a1817d61f
2024-10-19 01:10:12 +02:00
Michael Bestas
870c3ef1b3 build: Move version & legal properties to PRODUCT_SYSTEM_PROPERTIES
ADDITIONAL_SYSTEM_PROPERTIES is being deprecated.
No functional changes.

Change-Id: I01fd45edcc6c700540d3b7352fc466e65677a44e
2024-10-19 01:10:12 +02:00
Michael Bestas
39b81453e7 build: goodbye Cid :')
Change-Id: Ida0778c0f6a9d02f7e87f75847472358b7c03076
2024-10-19 01:10:12 +02:00
Michael Bestas
e93a56f126 build: Drop lineage sdk versions
Change-Id: I2448822be41835723995734b4e20f191f3ce8987
2024-10-19 01:10:12 +02:00
Michael Bestas
ffca5f4c63 soong: generator: Update for 15
Change-Id: I6f5be3f06f282b036cee5c2a884f1082f698bcaf
2024-10-19 01:10:11 +02:00
Michael Bestas
89c5cd1501 build: Switch to _get_build_var_cached
Change-Id: Id53622f5ce7de406f66b8374c3e91604deb4742b
2024-10-19 01:10:11 +02:00
Michael Bestas
44dcb39378 build: Drop makerecipe/mk_timer from envsetup
Change-Id: I5c15e2f509f69abb3cf993aaab945da47098f3da
2024-10-19 01:10:11 +02:00