Merge "fvp: Prepare the target to be launched via acloud."
diff --git a/MultiDisplayProvider/src/com/android/emulator/multidisplay/MultiDisplayService.java b/MultiDisplayProvider/src/com/android/emulator/multidisplay/MultiDisplayService.java
index 923b94b..49d5611 100644
--- a/MultiDisplayProvider/src/com/android/emulator/multidisplay/MultiDisplayService.java
+++ b/MultiDisplayProvider/src/com/android/emulator/multidisplay/MultiDisplayService.java
@@ -22,13 +22,10 @@
import android.os.Handler;
import android.os.IBinder;
import android.util.Log;
-import android.view.Display;
-import android.graphics.PixelFormat;
import android.hardware.display.DisplayManager;
import android.hardware.display.VirtualDisplay;
import android.view.Surface;
import android.os.Messenger;
-import android.os.Message;
public class MultiDisplayService extends Service {
@@ -52,7 +49,7 @@
private VirtualDisplay mVirtualDisplay[];
private Surface mSurface[];
private Messenger mMessenger;
- private ListenerThread mListner;
+ private ListenerThread mListener;
private final Handler mHandler = new Handler();
@@ -99,8 +96,8 @@
Log.e(TAG, "Failed to loadLibrary: " + e);
}
- mListner = new ListenerThread();
- mListner.start();
+ mListener = new ListenerThread();
+ mListener.start();
mDisplayManager = (DisplayManager)getSystemService(Context.DISPLAY_SERVICE);
mMultiDisplay = new MultiDisplay[MAX_DISPLAYS + 1];
@@ -128,53 +125,50 @@
}
private void deleteVirtualDisplay(int displayId) {
- int i = displayId;
- if (mMultiDisplay[i].enabled == false) {
+ if (!mMultiDisplay[displayId].enabled) {
return;
}
- if (mMultiDisplay[i].virtualDisplay != null) {
- mMultiDisplay[i].virtualDisplay.release();
+ if (mMultiDisplay[displayId].virtualDisplay != null) {
+ mMultiDisplay[displayId].virtualDisplay.release();
}
- if (mMultiDisplay[i].surface != null) {
- mMultiDisplay[i].surface.release();
+ if (mMultiDisplay[displayId].surface != null) {
+ mMultiDisplay[displayId].surface.release();
}
- mMultiDisplay[i].clear();
- nativeReleaseListener(i);
+ mMultiDisplay[displayId].clear();
+ nativeReleaseListener(displayId);
}
private void createVirtualDisplay(int displayId, int w, int h, int dpi, int flag) {
- int i = displayId;
- mMultiDisplay[i].surface = nativeCreateSurface(i, w, h);
- mMultiDisplay[i].virtualDisplay = mDisplayManager.createVirtualDisplay(
+ mMultiDisplay[displayId].surface = nativeCreateSurface(displayId, w, h);
+ mMultiDisplay[displayId].virtualDisplay = mDisplayManager.createVirtualDisplay(
null /* projection */,
DISPLAY_NAME, w, h, dpi,
- mMultiDisplay[i].surface, flag,
+ mMultiDisplay[displayId].surface, flag,
null /* callback */,
null /* handler */,
- UNIQUE_DISPLAY_ID[i]);
- mMultiDisplay[i].set(w, h, dpi, flag);
+ UNIQUE_DISPLAY_ID[displayId]);
+ mMultiDisplay[displayId].set(w, h, dpi, flag);
}
private void addVirtualDisplay(int displayId, int w, int h, int dpi, int flag) {
- int i = displayId;
- if (mMultiDisplay[i].match(w, h, dpi, flag)) {
+ if (mMultiDisplay[displayId].match(w, h, dpi, flag)) {
return;
}
- if (mMultiDisplay[i].virtualDisplay == null) {
- createVirtualDisplay(i, w, h, dpi, flag);
+ if (mMultiDisplay[displayId].virtualDisplay == null) {
+ createVirtualDisplay(displayId, w, h, dpi, flag);
return;
}
- if (mMultiDisplay[i].flag != flag) {
- deleteVirtualDisplay(i);
- createVirtualDisplay(i, w, h, dpi, flag);
+ if (mMultiDisplay[displayId].flag != flag) {
+ deleteVirtualDisplay(displayId);
+ createVirtualDisplay(displayId, w, h, dpi, flag);
return;
}
- if (mMultiDisplay[i].width != w || mMultiDisplay[i].height != h) {
- nativeResizeListener(i, w, h);
+ if (mMultiDisplay[displayId].width != w || mMultiDisplay[displayId].height != h) {
+ nativeResizeListener(displayId, w, h);
}
// only dpi changes
- mMultiDisplay[i].virtualDisplay.resize(w, h, dpi);
- mMultiDisplay[i].set(w, h, dpi, flag);
+ mMultiDisplay[displayId].virtualDisplay.resize(w, h, dpi);
+ mMultiDisplay[displayId].set(w, h, dpi, flag);
}
@Override
diff --git a/MultiDisplayProvider/src/com/android/emulator/multidisplay/MultiDisplayServiceReceiver.java b/MultiDisplayProvider/src/com/android/emulator/multidisplay/MultiDisplayServiceReceiver.java
index c84c43a..23ccd3c 100644
--- a/MultiDisplayProvider/src/com/android/emulator/multidisplay/MultiDisplayServiceReceiver.java
+++ b/MultiDisplayProvider/src/com/android/emulator/multidisplay/MultiDisplayServiceReceiver.java
@@ -24,20 +24,20 @@
import android.util.Log;
public class MultiDisplayServiceReceiver extends BroadcastReceiver {
- private static final String TAG = "MultiDisplayServiceReceiver";
+ private static final String TAG = "MultiDispActionReceiver";
@Override
public void onReceive(Context context, Intent intent) {
- if (isMyServiceRunning(MultiDisplayService.class, context) == false) {
+ if (!isMyServiceRunning(context)) {
Log.v(TAG, "startService");
context.startService(new Intent(context, MultiDisplayService.class));
}
}
- private boolean isMyServiceRunning(Class<?> serviceClass, Context context) {
+ private boolean isMyServiceRunning(Context context) {
ActivityManager manager = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
for (RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
- if (serviceClass.getName().equals(service.service.getClassName())) {
+ if (MultiDisplayService.class.getName().equals(service.service.getClassName())) {
return true;
}
}
diff --git a/arm64-vendor.mk b/arm64-vendor.mk
index d8f54e9..c235cf6 100644
--- a/arm64-vendor.mk
+++ b/arm64-vendor.mk
@@ -5,6 +5,9 @@
PRODUCT_PROPERTY_OVERRIDES += \
vendor.rild.libpath=/vendor/lib64/libgoldfish-ril.so
+PRODUCT_SHIPPING_API_LEVEL := 28
+TARGET_USES_MKE2FS := true
+
# Note: the following lines need to stay at the beginning so that it can
# take priority and override the rules it inherit from other mk files
# see copy file rules in core/Makefile
diff --git a/data/etc/Android.bp b/data/etc/Android.bp
new file mode 100644
index 0000000..df8c768
--- /dev/null
+++ b/data/etc/Android.bp
@@ -0,0 +1,30 @@
+// Copyright (C) 2020 The Android Open Source Project
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+cc_prebuilt_binary {
+ name: "emulatorip",
+ srcs: ["x86/emulatorip"],
+ stem: "ip",
+ shared_libs: [
+ "libc",
+ "libc++",
+ "libdl",
+ "libm",
+ ],
+ compile_multilib: "32",
+ vendor: true,
+ strip: {
+ none: true,
+ },
+}
diff --git a/fvp.mk b/fvp.mk
index b3902a7..7c64873 100644
--- a/fvp.mk
+++ b/fvp.mk
@@ -45,7 +45,6 @@
android.hardware.audio.service \
android.hardware.audio@6.0-impl:32 \
android.hardware.audio.effect@6.0-impl:32 \
- android.hardware.soundtrigger@2.2-impl \
audio.primary.default \
audio.r_submix.default \
android.hardware.drm@1.0-service \
diff --git a/fvpbase/manifest.xml b/fvpbase/manifest.xml
index cb39edb..51c7f93 100644
--- a/fvpbase/manifest.xml
+++ b/fvpbase/manifest.xml
@@ -117,13 +117,4 @@
<instance>default</instance>
</interface>
</hal>
- <hal format="hidl">
- <name>android.hardware.soundtrigger</name>
- <transport>hwbinder</transport>
- <version>2.2</version>
- <interface>
- <name>ISoundTriggerHw</name>
- <instance>default</instance>
- </interface>
- </hal>
</manifest>
diff --git a/fvpbase/tools/Android.bp b/fvpbase/tools/Android.bp
index a163725..3534198 100644
--- a/fvpbase/tools/Android.bp
+++ b/fvpbase/tools/Android.bp
@@ -18,4 +18,5 @@
cc_library_host_shared {
name: "bind_to_localhost",
srcs: ["bind_to_localhost.cpp"],
+ stl: "none",
}
diff --git a/init.ranchu.rc b/init.ranchu.rc
index d486c65..01c3499 100644
--- a/init.ranchu.rc
+++ b/init.ranchu.rc
@@ -4,6 +4,7 @@
on early-init
mount proc proc /proc remount hidepid=2,gid=3009
setprop ro.hardware.egl emulation
+ setprop ro.hardware.vulkan ranchu
on init
# set RLIMIT_MEMLOCK to 8MB for BPF network statistics
diff --git a/x86-vendor.mk b/x86-vendor.mk
index 720dfb5..8e654de 100644
--- a/x86-vendor.mk
+++ b/x86-vendor.mk
@@ -20,8 +20,8 @@
device/generic/goldfish/data/etc/encryptionkey.img:images/x86/encryptionkey.img \
prebuilts/qemu-kernel/x86_64/$(PRODUCT_KERNEL_VERSION)/kernel-qemu2:images/x86/kernel-ranchu-64
-PRODUCT_COPY_FILES += \
- device/generic/goldfish/data/etc/x86/emulatorip:$(TARGET_COPY_OUT_VENDOR)/bin/ip
+PRODUCT_PACKAGES += \
+ emulatorip
PRODUCT_SHIPPING_API_LEVEL := 28
diff --git a/x86_64-vendor.mk b/x86_64-vendor.mk
index eb78911..2334fa6 100644
--- a/x86_64-vendor.mk
+++ b/x86_64-vendor.mk
@@ -21,8 +21,8 @@
device/generic/goldfish/data/etc/encryptionkey.img:images/x86_64/encryptionkey.img \
prebuilts/qemu-kernel/x86_64/$(PRODUCT_KERNEL_VERSION)/kernel-qemu2:images/x86_64/kernel-ranchu
-PRODUCT_COPY_FILES += \
- device/generic/goldfish/data/etc/x86/emulatorip:$(TARGET_COPY_OUT_VENDOR)/bin/ip
+PRODUCT_PACKAGES += \
+ emulatorip
PRODUCT_SHIPPING_API_LEVEL := 28