Sync to upstream android-17.0 (AOSP17)

Pull in raspberry-vanilla's AOSP17 device tree changes for rpi4 while
keeping all PawletOS customizations (A/B partition layout, sepolicy,
zram, TWRP recovery scaffolding, ALSA HDMI pre-warm, product/overlay
structure) intact on top.

Upstream changes absorbed:
- AOSP17 audio HAL refactor (StreamAlsa split into StreamAlsaBase/
  StreamAlsaMonoPipe, Utils.cpp -> UtilsAlsa.cpp, new Bluetooth/stub
  helper classes, libeffects AIDL rebuild via *_ndk_shared defaults)
- API level 36 -> 37, FCM matrix level 202504 -> 202604
- QuickSettings tile default split (SystemUIRpiOverlay, ported into
  pawlet_rpi_common where this overlay now lives)
- vendor_tracing_descriptors added to enforce-product-packages-exist
- misc AOSP17 logging header switch (android-base/logging.h -> Log.h)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-04 00:16:17 -07:00
parent 3963268947
commit 8d5f56fd05
96 changed files with 3900 additions and 1534 deletions
+11 -3
View File
@@ -18,9 +18,9 @@
#include <vector>
#include <android-base/logging.h>
#include <Log.h>
#include "Utils.h"
#include "UtilsAlsa.h"
#include "core-impl/ModuleAlsa.h"
extern "C" {
@@ -45,7 +45,8 @@ ndk::ScopedAStatus ModuleAlsa::populateConnectedDevicePort(AudioPort* audioPort,
}
alsa_device_profile* profile = proxy.getProfile();
std::vector<AudioChannelLayout> channels = alsa::getChannelMasksFromProfile(profile);
std::vector<AudioChannelLayout> channels =
alsa::getChannelMasksFromProfile(profile, isDevicePortSupportAmbisonics(*audioPort));
std::vector<int> sampleRates = alsa::getSampleRatesFromProfile(profile);
for (size_t i = 0; i < std::min(MAX_PROFILE_FORMATS, AUDIO_PORT_MAX_AUDIO_PROFILES) &&
@@ -65,4 +66,11 @@ ndk::ScopedAStatus ModuleAlsa::populateConnectedDevicePort(AudioPort* audioPort,
return ndk::ScopedAStatus::ok();
}
bool ModuleAlsa::isDevicePortSupportAmbisonics(const AudioPort&) {
// The default implementation always returns 'false'. Vendor implementations
// may supply logic which is based on the knowledge of SoC capabilities,
// or based on USB device ID.
return false;
}
} // namespace aidl::android::hardware::audio::core