summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDiogo Ferreira <defer@cyngn.com>2016-08-27 19:51:34 +0100
committerDiogo Ferreira <defer@cyngn.com>2016-08-27 19:51:34 +0100
commitdf5e2ce95bc64e515b52f8b748edfe4445a8fa9d (patch)
tree5213af5806b7ecec84befd27d6aaecdf72d556ee
parent6ed67b2e600169010776823f8b6edbe39304d662 (diff)
parentc7fb0790d0503ffd902d720cfe9b44acf7f2a5bb (diff)
downloadandroid_device_google_atv-staging/cm-14.0.tar.gz
android_device_google_atv-staging/cm-14.0.tar.bz2
android_device_google_atv-staging/cm-14.0.zip
Merge tag 'android-7.0.0_r1' into HEADstaging/cm-14.0
Android 7.0.0 release 1
-rw-r--r--init.goldfish.rc99
-rw-r--r--init.ranchu.rc81
-rw-r--r--overlay/frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.jpgbin57311 -> 0 bytes
-rw-r--r--overlay/frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.pngbin0 -> 6161 bytes
-rw-r--r--overlay/frameworks/base/core/res/res/values/config.xml8
-rw-r--r--overlay/frameworks/base/core/res/res/xml/global_keys.xml5
-rw-r--r--overlay/frameworks/base/packages/SystemUI/res/drawable-hdpi/recents_tv_bg_default.pngbin0 -> 1465297 bytes
-rw-r--r--overlay/frameworks/base/packages/SystemUI/res/drawable-mdpi/recents_tv_bg_default.pngbin0 -> 603263 bytes
-rw-r--r--overlay/frameworks/base/packages/SystemUI/res/drawable-xhdpi/recents_tv_bg_default.pngbin0 -> 2442282 bytes
-rw-r--r--overlay/frameworks/base/packages/SystemUI/res/values/config.xml6
-rw-r--r--permissions/tv_core_hardware.xml3
-rw-r--r--products/atv_base.mk15
-rw-r--r--products/atv_generic.mk6
-rw-r--r--products/sdk_atv_armv7.mk4
-rw-r--r--sdk/images_armeabi-v7a_source.prop_template2
-rw-r--r--sdk/images_x86_source.prop_template2
-rw-r--r--sepolicy/priv_app.te1
-rw-r--r--sepolicy/service.te2
-rw-r--r--sepolicy/service_contexts1
-rw-r--r--sepolicy/system_service.te2
-rw-r--r--sepolicy/untrusted_app.te1
21 files changed, 220 insertions, 18 deletions
diff --git a/init.goldfish.rc b/init.goldfish.rc
new file mode 100644
index 0000000..48663bc
--- /dev/null
+++ b/init.goldfish.rc
@@ -0,0 +1,99 @@
+
+on early-init
+ mount debugfs debugfs /sys/kernel/debug
+
+on init
+
+on boot
+ setprop ARGH ARGH
+ setprop net.eth0.gw 10.0.2.2
+ setprop net.eth0.dns1 10.0.2.3
+ setprop net.dns1 10.0.2.3
+ setprop net.gprs.local-ip 10.0.2.15
+ setprop ro.radio.use-ppp no
+ setprop ro.build.product generic
+ setprop ro.product.device generic
+
+# fake some battery state
+ setprop status.battery.state Slow
+ setprop status.battery.level 5
+ setprop status.battery.level_raw 50
+ setprop status.battery.level_scale 9
+
+# set up the GPU caching
+ setprop ro.hwui.texture_cache_size 72
+ setprop ro.hwui.layer_cache_size 48
+ setprop ro.hwui.r_buffer_cache_size 8
+ setprop ro.hwui.path_cache_size 32
+ setprop ro.hwui.gradient_cache_size 1
+ setprop ro.hwui.drop_shadow_cache_size 6
+ setprop ro.hwui.texture_cache_flushrate 0.4
+ setprop ro.hwui.text_small_cache_width 1024
+ setprop ro.hwui.text_small_cache_height 1024
+ setprop ro.hwui.text_large_cache_width 2048
+ setprop ro.hwui.text_large_cache_height 1024
+
+# disable some daemons the emulator doesn't want
+ stop dund
+ stop akmd
+
+# start essential services
+ start qemud
+ start goldfish-logcat
+ start goldfish-setup
+
+ setprop ro.setupwizard.mode EMULATOR
+
+# enable Google-specific location features,
+# like NetworkLocationProvider and LocationCollector
+ setprop ro.com.google.locationfeatures 1
+
+# For the emulator, which bypasses Setup Wizard, you can specify
+# account info for the device via these two properties. Google
+# Login Service will insert these accounts into the database when
+# it is created (ie, after a data wipe).
+#
+# setprop ro.config.hosted_account username@hosteddomain.org:password
+# setprop ro.config.google_account username@gmail.com:password
+#
+# You MUST have a Google account on the device, and you MAY
+# additionally have a hosted account. No other configuration is
+# supported, and arbitrary breakage may result if you specify
+# something else.
+
+on fs
+ mount_all /fstab.goldfish
+
+service goldfish-setup /system/etc/init.goldfish.sh
+ user root
+ group root
+ oneshot
+
+# The qemu-props program is used to set various system
+# properties on boot. It must be run early during the boot
+# process to avoid race conditions with other daemons that
+# might read them (e.g. surface flinger), so define it in
+# class 'core'
+#
+service qemu-props /system/bin/qemu-props
+ class core
+ user root
+ group root
+ oneshot
+
+service qemud /system/bin/qemud
+ socket qemud stream 666
+ oneshot
+
+# -Q is a special logcat option that forces the
+# program to check wether it runs on the emulator
+# if it does, it redirects its output to the device
+# named by the androidboot.console kernel option
+# if not, is simply exits immediately
+
+service goldfish-logcat /system/bin/logcat -Q
+ oneshot
+
+service fingerprintd /system/bin/fingerprintd
+ class late_start
+ user system
diff --git a/init.ranchu.rc b/init.ranchu.rc
new file mode 100644
index 0000000..5baf9ed
--- /dev/null
+++ b/init.ranchu.rc
@@ -0,0 +1,81 @@
+on fs
+ mount_all /fstab.ranchu
+
+on early-init
+ mount debugfs debugfs /sys/kernel/debug
+
+on init
+
+ symlink /dev/goldfish_pipe /dev/android_pipe
+ symlink /dev/goldfish_pipe /dev/qemu_pipe
+
+on boot
+ setprop net.eth0.gw 10.0.2.2
+ setprop net.eth0.dns1 10.0.2.3
+ setprop net.gprs.local-ip 10.0.2.15
+ setprop ro.radio.use-ppp no
+ setprop ro.build.product generic
+ setprop ro.product.device generic
+ setprop ro.hardware.audio.primary goldfish
+
+# fake some battery state
+ setprop status.battery.state Slow
+ setprop status.battery.level 5
+ setprop status.battery.level_raw 50
+ setprop status.battery.level_scale 9
+
+# set up the GPU caching
+ setprop ro.hwui.texture_cache_size 72
+ setprop ro.hwui.layer_cache_size 48
+ setprop ro.hwui.r_buffer_cache_size 8
+ setprop ro.hwui.path_cache_size 32
+ setprop ro.hwui.gradient_cache_size 1
+ setprop ro.hwui.drop_shadow_cache_size 6
+ setprop ro.hwui.texture_cache_flushrate 0.4
+ setprop ro.hwui.text_small_cache_width 1024
+ setprop ro.hwui.text_small_cache_height 1024
+ setprop ro.hwui.text_large_cache_width 2048
+ setprop ro.hwui.text_large_cache_height 1024
+
+# disable some daemons the emulator doesn't want
+ stop dund
+ stop akmd
+
+# start essential services
+# These were written for the classic emulator, but are applicable to ranchu
+ start goldfish-logcat
+ start goldfish-setup
+
+# enable Google-specific location features,
+# like NetworkLocationProvider and LocationCollector
+ setprop ro.com.google.locationfeatures 1
+
+service goldfish-setup /system/etc/init.goldfish.sh
+ user root
+ group root
+ oneshot
+
+# The qemu-props program is used to set various system
+# properties on boot. It must be run early during the boot
+# process to avoid race conditions with other daemons that
+# might read them (e.g. surface flinger), so define it in
+# class 'core'
+#
+service qemu-props /system/bin/qemu-props
+ class core
+ user root
+ group root
+ oneshot
+
+# -Q is a special logcat option that forces the
+# program to check wether it runs on the emulator
+# if it does, it redirects its output to the device
+# named by the androidboot.console kernel option
+# if not, is simply exits immediately
+
+service goldfish-logcat /system/bin/logcat -Q
+ oneshot
+
+service fingerprintd /system/bin/fingerprintd
+ class late_start
+ user system
diff --git a/overlay/frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.jpg b/overlay/frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.jpg
deleted file mode 100644
index 5b33b29..0000000
--- a/overlay/frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.jpg
+++ /dev/null
Binary files differ
diff --git a/overlay/frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.png b/overlay/frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.png
new file mode 100644
index 0000000..8ed1509
--- /dev/null
+++ b/overlay/frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.png
Binary files differ
diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml
index 03f3c5b..6c84b87 100644
--- a/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/overlay/frameworks/base/core/res/res/values/config.xml
@@ -44,4 +44,12 @@
<bool name="config_hasPermanentDpad">true</bool>
<bool name="config_defaultInTouchMode">false</bool>
+
+ <!-- Launcher customization requires AppWidgetService, but otherwise
+ home screen widgets are not supported on TV -->
+ <bool name="config_enableAppWidgetService">true</bool>
+
+ <!-- Package of the unbundled tv remote service which can connect to tv remote provider -->
+ <string translatable="false" name="config_tvRemoteServicePackage">com.google.android.tv.remote.service</string>
+
</resources>
diff --git a/overlay/frameworks/base/core/res/res/xml/global_keys.xml b/overlay/frameworks/base/core/res/res/xml/global_keys.xml
index 0e761ef..f6142dc 100644
--- a/overlay/frameworks/base/core/res/res/xml/global_keys.xml
+++ b/overlay/frameworks/base/core/res/res/xml/global_keys.xml
@@ -28,8 +28,9 @@
<global_keys version="1">
<!-- Example format: id = keycode to handle globally. component = component which will handle
this key. -->
+ <key keyCode="KEYCODE_GUIDE" component="com.google.android.tv/.receiver.GlobalKeyReceiver" />
<key keyCode="KEYCODE_TV" component="com.google.android.tv/.receiver.GlobalKeyReceiver" />
<key keyCode="KEYCODE_TV_INPUT" component="com.google.android.tv/.receiver.GlobalKeyReceiver" />
- <!-- OEMs might want to add more custom global key handlings for TV specific key codes such as
- KEYCODE_TVGUIDE and KEYCODE_DVR. -->
+
+ <!-- OEMs might want to add more custom global key handlings for TV specific key codes. -->
</global_keys>
diff --git a/overlay/frameworks/base/packages/SystemUI/res/drawable-hdpi/recents_tv_bg_default.png b/overlay/frameworks/base/packages/SystemUI/res/drawable-hdpi/recents_tv_bg_default.png
new file mode 100644
index 0000000..b308498
--- /dev/null
+++ b/overlay/frameworks/base/packages/SystemUI/res/drawable-hdpi/recents_tv_bg_default.png
Binary files differ
diff --git a/overlay/frameworks/base/packages/SystemUI/res/drawable-mdpi/recents_tv_bg_default.png b/overlay/frameworks/base/packages/SystemUI/res/drawable-mdpi/recents_tv_bg_default.png
new file mode 100644
index 0000000..60c17f7
--- /dev/null
+++ b/overlay/frameworks/base/packages/SystemUI/res/drawable-mdpi/recents_tv_bg_default.png
Binary files differ
diff --git a/overlay/frameworks/base/packages/SystemUI/res/drawable-xhdpi/recents_tv_bg_default.png b/overlay/frameworks/base/packages/SystemUI/res/drawable-xhdpi/recents_tv_bg_default.png
new file mode 100644
index 0000000..d54f96d
--- /dev/null
+++ b/overlay/frameworks/base/packages/SystemUI/res/drawable-xhdpi/recents_tv_bg_default.png
Binary files differ
diff --git a/overlay/frameworks/base/packages/SystemUI/res/values/config.xml b/overlay/frameworks/base/packages/SystemUI/res/values/config.xml
index 05960f8..af03224 100644
--- a/overlay/frameworks/base/packages/SystemUI/res/values/config.xml
+++ b/overlay/frameworks/base/packages/SystemUI/res/values/config.xml
@@ -22,4 +22,10 @@
<!-- Disable KeyguardSerivce -->
<bool name="config_enableKeyguardService">false</bool>
+ <!-- Package names to be blacklisted in Recents -->
+ <string-array name="recents_tv_blacklist_array">
+ <item>com.google.android.tv.remote.service</item>
+ <item>com.google.android.apps.mediashell</item>
+ </string-array>
+
</resources>
diff --git a/permissions/tv_core_hardware.xml b/permissions/tv_core_hardware.xml
index 7ea515f..d6b9c0b 100644
--- a/permissions/tv_core_hardware.xml
+++ b/permissions/tv_core_hardware.xml
@@ -26,12 +26,11 @@
<feature name="android.hardware.screen.landscape" />
<feature name="android.hardware.type.television" />
- <feature name="android.software.app_widgets" />
<feature name="android.software.backup" />
<feature name="android.software.leanback" />
<feature name="android.software.leanback_only" />
<feature name="android.software.live_tv" />
- <feature name="android.software.print" />
+ <feature name="android.software.picture_in_picture" />
<feature name="android.software.voice_recognizers" />
</permissions>
diff --git a/products/atv_base.mk b/products/atv_base.mk
index a7a62ad..db8bc44 100644
--- a/products/atv_base.mk
+++ b/products/atv_base.mk
@@ -63,6 +63,7 @@ PRODUCT_PACKAGES += \
PRODUCT_PACKAGES += \
BasicDreams \
CalendarProvider \
+ CaptivePortalLogin \
CertInstaller \
ExternalStorageProvider \
FusedLocation \
@@ -73,7 +74,9 @@ PRODUCT_PACKAGES += \
PrintSpooler \
ProxyHandler \
SharedStorageBackup \
- VpnDialogs
+ VpnDialogs \
+ com.android.media.tv.remoteprovider \
+ com.android.media.tv.remoteprovider.xml
# From build/target/product/generic_no_telephony.mk
PRODUCT_PACKAGES += \
@@ -94,15 +97,17 @@ PRODUCT_COPY_FILES += \
PRODUCT_PROPERTY_OVERRIDES += \
persist.sys.media.avsync=true
-# Use full Noto Sans Japanese font
-FONT_NOTOSANS_JP_FULL := true
-
# Do not include the Live Channels app if USE_OEM_TV_APP flag is set.
# The feature com.google.android.tv.installed is used to tell whether a device
# has the pre-installed Live Channels app. This is necessary for the Play Store
# to identify the compatible devices that can install later updates of the app.
ifneq ($(USE_OEM_TV_APP),true)
- PRODUCT_PACKAGES += TV
+ ifneq ($(PRODUCT_IS_ATV_SDK),true)
+ PRODUCT_PACKAGES += TV
+ else
+ PRODUCT_PACKAGES += LiveTv
+ endif # if PRODUCT_IS_ATV_SDK
+
PRODUCT_COPY_FILES += \
device/google/atv/permissions/com.google.android.tv.installed.xml:system/etc/permissions/com.google.android.tv.installed.xml
endif
diff --git a/products/atv_generic.mk b/products/atv_generic.mk
index bfaa99c..bc94202 100644
--- a/products/atv_generic.mk
+++ b/products/atv_generic.mk
@@ -34,13 +34,7 @@ PRODUCT_AAPT_PREF_CONFIG := xhdpi
# From build/target/product/full_base.mk
PRODUCT_PACKAGES += \
- Galaxy4 \
- HoloSpiralWallpaper \
- LiveWallpapers \
LiveWallpapersPicker \
- MagicSmokeWallpapers \
- NoiseField \
- PhaseBeam \
PhotoTable
$(call inherit-product, $(SRC_TARGET_DIR)/product/locales_full.mk)
diff --git a/products/sdk_atv_armv7.mk b/products/sdk_atv_armv7.mk
index 4740f24..45b3d65 100644
--- a/products/sdk_atv_armv7.mk
+++ b/products/sdk_atv_armv7.mk
@@ -20,6 +20,7 @@ PRODUCT_PACKAGES := \
EmulatorSmokeTests \
LeanbackSampleApp \
TelephonyProvider \
+ SdkSetup \
audio.primary.goldfish \
rild
@@ -30,7 +31,10 @@ DEVICE_PACKAGE_OVERLAYS := \
PRODUCT_COPY_FILES := \
device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml \
device/generic/goldfish/camera/media_codecs.xml:system/etc/media_codecs.xml \
+ device/google/atv/init.goldfish.rc:root/init.goldfish.rc \
+ device/google/atv/init.ranchu.rc:root/init.ranchu.rc \
frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:system/etc/media_codecs_google_audio.xml \
+ frameworks/native/data/etc/android.hardware.ethernet.xml:system/etc/permissions/android.hardware.ethernet.xml \
frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:system/etc/media_codecs_google_telephony.xml \
frameworks/av/media/libstagefright/data/media_codecs_google_tv.xml:system/etc/media_codecs_google_tv.xml \
frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:system/etc/media_codecs_google_video.xml \
diff --git a/sdk/images_armeabi-v7a_source.prop_template b/sdk/images_armeabi-v7a_source.prop_template
index 19562d5..c0fc670 100644
--- a/sdk/images_armeabi-v7a_source.prop_template
+++ b/sdk/images_armeabi-v7a_source.prop_template
@@ -1,6 +1,6 @@
Pkg.Desc=Android SDK Platform ${PLATFORM_VERSION}
Pkg.UserSrc=false
-Pkg.Revision=2
+Pkg.Revision=4
AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION}
AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME}
SystemImage.Abi=armeabi-v7a
diff --git a/sdk/images_x86_source.prop_template b/sdk/images_x86_source.prop_template
index ab2f0e8..5477fcd 100644
--- a/sdk/images_x86_source.prop_template
+++ b/sdk/images_x86_source.prop_template
@@ -1,6 +1,6 @@
Pkg.Desc=Android SDK Platform ${PLATFORM_VERSION}
Pkg.UserSrc=false
-Pkg.Revision=2
+Pkg.Revision=4
AndroidVersion.ApiLevel=${PLATFORM_SDK_VERSION}
AndroidVersion.CodeName=${PLATFORM_VERSION_CODENAME}
SystemImage.Abi=x86
diff --git a/sepolicy/priv_app.te b/sepolicy/priv_app.te
new file mode 100644
index 0000000..e47bb1f
--- /dev/null
+++ b/sepolicy/priv_app.te
@@ -0,0 +1 @@
+allow priv_app dvb_device:chr_file rw_file_perms;
diff --git a/sepolicy/service.te b/sepolicy/service.te
new file mode 100644
index 0000000..0dad463
--- /dev/null
+++ b/sepolicy/service.te
@@ -0,0 +1,2 @@
+# system_server_services needed on atv
+type tv_remote_service, system_server_service, service_manager_type;
diff --git a/sepolicy/service_contexts b/sepolicy/service_contexts
new file mode 100644
index 0000000..a809ae0
--- /dev/null
+++ b/sepolicy/service_contexts
@@ -0,0 +1 @@
+tv_remote u:object_r:tv_remote_service:s0
diff --git a/sepolicy/system_service.te b/sepolicy/system_service.te
index d0bef2f..f6783d7 100644
--- a/sepolicy/system_service.te
+++ b/sepolicy/system_service.te
@@ -1 +1,3 @@
+# Access devices.
allow system_server dvb_device:chr_file rw_file_perms;
+allow system_server uhid_device:chr_file { write open ioctl };
diff --git a/sepolicy/untrusted_app.te b/sepolicy/untrusted_app.te
deleted file mode 100644
index 8f23f4e..0000000
--- a/sepolicy/untrusted_app.te
+++ /dev/null
@@ -1 +0,0 @@
-allow untrusted_app dvb_device:chr_file rw_file_perms;