mirror of
https://github.com/chararomandroid/android_device_samsung_a20
synced 2026-08-23 04:25:33 -04:00
universal7885: Major (de)commonize due to prev commit
This commit is contained in:
parent
e88568c670
commit
07b209df81
31 changed files with 606 additions and 66 deletions
|
|
@ -5,5 +5,18 @@ $(call inherit-product, device/samsung/universal7885-common/universal7885-common
|
||||||
|
|
||||||
$(call inherit-product, vendor/samsung/a10/a10-vendor.mk)
|
$(call inherit-product, vendor/samsung/a10/a10-vendor.mk)
|
||||||
|
|
||||||
|
$(call inherit-product, frameworks/native/build/phone-xhdpi-2048-dalvik-heap.mk)
|
||||||
|
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
CameraLightSensor
|
CameraLightSensor
|
||||||
|
|
||||||
|
# USB
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
android.hardware.usb@1.0-service.a10
|
||||||
|
|
||||||
|
TARGET_SCREEN_HEIGHT := 1560
|
||||||
|
TARGET_SCREEN_WIDTH := 720
|
||||||
|
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
fstab.exynos7884B \
|
||||||
|
ueventd.exynos7884B.rc
|
||||||
|
|
|
||||||
|
|
@ -5,8 +5,27 @@ $(call inherit-product, device/samsung/universal7885-common/universal7885-common
|
||||||
|
|
||||||
$(call inherit-product, vendor/samsung/a20/a20-vendor.mk)
|
$(call inherit-product, vendor/samsung/a20/a20-vendor.mk)
|
||||||
|
|
||||||
|
$(call inherit-product, frameworks/native/build/phone-xhdpi-4096-dalvik-heap.mk)
|
||||||
|
|
||||||
# Derp
|
# Derp
|
||||||
DERP_BUILDTYPE := Official
|
DERP_BUILDTYPE := Official
|
||||||
|
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
CameraLightSensor
|
CameraLightSensor
|
||||||
|
|
||||||
|
# USB
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
android.hardware.usb@1.1-service.exynos7885
|
||||||
|
|
||||||
|
TARGET_SCREEN_HEIGHT := 1560
|
||||||
|
TARGET_SCREEN_WIDTH := 720
|
||||||
|
|
||||||
|
# Fingerprint
|
||||||
|
PRODUCT_COPY_FILES += frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
|
||||||
|
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
android.hardware.biometrics.fingerprint@2.1-service.samsung
|
||||||
|
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
fstab.exynos7884B \
|
||||||
|
ueventd.exynos7884B.rc
|
||||||
|
|
|
||||||
|
|
@ -5,8 +5,27 @@ $(call inherit-product, device/samsung/universal7885-common/universal7885-common
|
||||||
|
|
||||||
$(call inherit-product, vendor/samsung/a20e/a20e-vendor.mk)
|
$(call inherit-product, vendor/samsung/a20e/a20e-vendor.mk)
|
||||||
|
|
||||||
|
$(call inherit-product, frameworks/native/build/phone-xhdpi-4096-dalvik-heap.mk)
|
||||||
|
|
||||||
# Derp
|
# Derp
|
||||||
DERP_BUILDTYPE := Official
|
DERP_BUILDTYPE := Official
|
||||||
|
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
CameraLightSensor
|
CameraLightSensor
|
||||||
|
|
||||||
|
# USB
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
android.hardware.usb@1.1-service.exynos7885
|
||||||
|
|
||||||
|
TARGET_SCREEN_HEIGHT := 1560
|
||||||
|
TARGET_SCREEN_WIDTH := 720
|
||||||
|
|
||||||
|
# Fingerprint
|
||||||
|
PRODUCT_COPY_FILES += frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
|
||||||
|
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
android.hardware.biometrics.fingerprint@2.1-service.samsung
|
||||||
|
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
fstab.exynos7884B \
|
||||||
|
ueventd.exynos7884B.rc
|
||||||
|
|
|
||||||
|
|
@ -5,4 +5,21 @@ $(call inherit-product, device/samsung/universal7885-common/universal7885-common
|
||||||
|
|
||||||
$(call inherit-product, vendor/samsung/a30/a30-vendor.mk)
|
$(call inherit-product, vendor/samsung/a30/a30-vendor.mk)
|
||||||
|
|
||||||
|
$(call inherit-product, frameworks/native/build/phone-xhdpi-4096-dalvik-heap.mk)
|
||||||
|
|
||||||
|
TARGET_SCREEN_HEIGHT := 2280
|
||||||
|
TARGET_SCREEN_WIDTH := 1080
|
||||||
|
|
||||||
|
# USB
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
android.hardware.usb@1.1-service.exynos7885
|
||||||
|
|
||||||
|
# Fingerprint
|
||||||
|
PRODUCT_COPY_FILES += frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
|
||||||
|
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
android.hardware.biometrics.fingerprint@2.1-service.samsung
|
||||||
|
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
fstab.exynos7904 \
|
||||||
|
ueventd.exynos7904.rc
|
||||||
|
|
|
||||||
|
|
@ -18,5 +18,5 @@ echo "PRODUCT_NAME := "$VENDOR"_a30" >> device/samsung/a30/"$VENDOR"_a30.mk
|
||||||
echo "" >> device/samsung/a30/"$VENDOR"_a30.mk
|
echo "" >> device/samsung/a30/"$VENDOR"_a30.mk
|
||||||
echo "# Additional Props" >> device/samsung/a30/"$VENDOR"_a30.mk
|
echo "# Additional Props" >> device/samsung/a30/"$VENDOR"_a30.mk
|
||||||
echo "TARGET_FACE_UNLOCK_SUPPORTED := true" >> device/samsung/a30/"$VENDOR"_a30.mk
|
echo "TARGET_FACE_UNLOCK_SUPPORTED := true" >> device/samsung/a30/"$VENDOR"_a30.mk
|
||||||
echo "TARGET_BOOT_ANIMATION_RES := 720" >> device/samsung/a30/"$VENDOR"_a30.mk
|
echo "TARGET_BOOT_ANIMATION_RES := 1080" >> device/samsung/a30/"$VENDOR"_a30.mk
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,5 +5,21 @@ $(call inherit-product, device/samsung/universal7885-common/universal7885-common
|
||||||
|
|
||||||
$(call inherit-product, vendor/samsung/a40/a40-vendor.mk)
|
$(call inherit-product, vendor/samsung/a40/a40-vendor.mk)
|
||||||
|
|
||||||
|
$(call inherit-product, frameworks/native/build/phone-xhdpi-4096-dalvik-heap.mk)
|
||||||
|
|
||||||
|
# USB
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
android.hardware.usb@1.1-service.exynos7885
|
||||||
|
|
||||||
|
TARGET_SCREEN_HEIGHT := 2280
|
||||||
|
TARGET_SCREEN_WIDTH := 1080
|
||||||
|
|
||||||
|
# Fingerprint
|
||||||
|
PRODUCT_COPY_FILES += frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
|
||||||
|
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
android.hardware.biometrics.fingerprint@2.1-service.samsung
|
||||||
|
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
fstab.exynos7904 \
|
||||||
|
ueventd.exynos7904.rc
|
||||||
|
|
|
||||||
|
|
@ -69,8 +69,8 @@
|
||||||
</array>
|
</array>
|
||||||
<item name="cpu.idle">3.79</item>
|
<item name="cpu.idle">3.79</item>
|
||||||
<item name="cpu.awake">23</item>
|
<item name="cpu.awake">23</item>
|
||||||
<item name="battery.capacity">5000</item>
|
<item name="battery.capacity">3100</item>
|
||||||
<item name="battery.typical.capacity">5000</item>
|
<item name="battery.typical.capacity">3100</item>
|
||||||
<item name="wifi.controller.idle">1</item>
|
<item name="wifi.controller.idle">1</item>
|
||||||
<item name="wifi.controller.rx">65</item>
|
<item name="wifi.controller.rx">65</item>
|
||||||
<item name="wifi.controller.tx">265</item>
|
<item name="wifi.controller.tx">265</item>
|
||||||
|
|
|
||||||
|
|
@ -18,5 +18,5 @@ echo "PRODUCT_NAME := "$VENDOR"_a40" >> device/samsung/a40/"$VENDOR"_a40.mk
|
||||||
echo "" >> device/samsung/a40/"$VENDOR"_a40.mk
|
echo "" >> device/samsung/a40/"$VENDOR"_a40.mk
|
||||||
echo "# Additional Props" >> device/samsung/a40/"$VENDOR"_a40.mk
|
echo "# Additional Props" >> device/samsung/a40/"$VENDOR"_a40.mk
|
||||||
echo "TARGET_FACE_UNLOCK_SUPPORTED := true" >> device/samsung/a40/"$VENDOR"_a40.mk
|
echo "TARGET_FACE_UNLOCK_SUPPORTED := true" >> device/samsung/a40/"$VENDOR"_a40.mk
|
||||||
echo "TARGET_BOOT_ANIMATION_RES := 720" >> device/samsung/a40/"$VENDOR"_a40.mk
|
echo "TARGET_BOOT_ANIMATION_RES := 1080" >> device/samsung/a40/"$VENDOR"_a40.mk
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
LOCAL_PATH := $(call my-dir)
|
LOCAL_PATH := $(call my-dir)
|
||||||
|
|
||||||
ifneq ($(filter a20 a20e, $(TARGET_DEVICE)),)
|
ifneq ($(filter a10 a20 a20e a30 a40, $(TARGET_DEVICE)),)
|
||||||
|
|
||||||
include $(call all-makefiles-under,$(LOCAL_PATH))
|
include $(call all-makefiles-under,$(LOCAL_PATH))
|
||||||
|
|
||||||
|
|
@ -9,27 +9,6 @@ include $(CLEAR_VARS)
|
||||||
LIBGLES_MALI_LIBRARY := /vendor/lib/egl/libGLES_mali.so
|
LIBGLES_MALI_LIBRARY := /vendor/lib/egl/libGLES_mali.so
|
||||||
LIBGLES_MALI64_LIBRARY := /vendor/lib64/egl/libGLES_mali.so
|
LIBGLES_MALI64_LIBRARY := /vendor/lib64/egl/libGLES_mali.so
|
||||||
|
|
||||||
VULKAN_SYMLINK := $(TARGET_OUT_VENDOR)/lib/hw/vulkan.universal7884B.so
|
|
||||||
$(VULKAN_SYMLINK): $(LOCAL_INSTALLED_MODULE)
|
|
||||||
@echo "Creating lib/hw/vulkan.universal7884B.so symlink: $@"
|
|
||||||
@mkdir -p $(dir $@)
|
|
||||||
$(hide) ln -sf $(LIBGLES_MALI_LIBRARY) $@
|
|
||||||
|
|
||||||
VULKAN64_SYMLINK := $(TARGET_OUT_VENDOR)/lib64/hw/vulkan.universal7884B.so
|
|
||||||
$(VULKAN64_SYMLINK): $(LOCAL_INSTALLED_MODULE)
|
|
||||||
@echo "Creating lib64/hw/vulkan.universal7884B.so symlink: $@"
|
|
||||||
@mkdir -p $(dir $@)
|
|
||||||
$(hide) ln -sf $(LIBGLES_MALI64_LIBRARY) $@
|
|
||||||
|
|
||||||
ALL_DEFAULT_INSTALLED_MODULES += \
|
|
||||||
$(VULKAN_SYMLINK) \
|
|
||||||
$(VULKAN64_SYMLINK)
|
|
||||||
|
|
||||||
include $(CLEAR_VARS)
|
|
||||||
|
|
||||||
LIBGLES_MALI_LIBRARY := /vendor/lib/egl/libGLES_mali.so
|
|
||||||
LIBGLES_MALI64_LIBRARY := /vendor/lib64/egl/libGLES_mali.so
|
|
||||||
|
|
||||||
LIBOPENCL_SYMLINK := $(TARGET_OUT_VENDOR)/lib/libOpenCL.so
|
LIBOPENCL_SYMLINK := $(TARGET_OUT_VENDOR)/lib/libOpenCL.so
|
||||||
$(LIBOPENCL_SYMLINK): $(LOCAL_INSTALLED_MODULE)
|
$(LIBOPENCL_SYMLINK): $(LOCAL_INSTALLED_MODULE)
|
||||||
@echo "Creating lib/libOpenCL.so symlink: $@"
|
@echo "Creating lib/libOpenCL.so symlink: $@"
|
||||||
|
|
|
||||||
|
|
@ -3,9 +3,16 @@ COMMON_PATH := device/samsung/universal7885-common
|
||||||
BOARD_VENDOR := samsung
|
BOARD_VENDOR := samsung
|
||||||
|
|
||||||
# Platform
|
# Platform
|
||||||
TARGET_BOARD_PLATFORM := universal7884B
|
TARGET_BOARD_PLATFORM := exynos7
|
||||||
|
|
||||||
|
ifeq ($(TARGET_DEVICE), $(filter $(TARGET_DEVICE),a10 a20 a20e))
|
||||||
TARGET_SOC := exynos7884B
|
TARGET_SOC := exynos7884B
|
||||||
TARGET_BOOTLOADER_BOARD_NAME := universal7884B
|
TARGET_BOOTLOADER_BOARD_NAME := universal7884B
|
||||||
|
else ifeq ($(TARGET_DEVICE), $(filter $(TARGET_DEVICE),a30 a40))
|
||||||
|
TARGET_SOC := exynos7904
|
||||||
|
TARGET_BOOTLOADER_BOARD_NAME := universal7904
|
||||||
|
endif
|
||||||
|
|
||||||
TARGET_NO_BOOTLOADER := true
|
TARGET_NO_BOOTLOADER := true
|
||||||
TARGET_NO_RADIOIMAGE := true
|
TARGET_NO_RADIOIMAGE := true
|
||||||
|
|
||||||
|
|
@ -45,7 +52,7 @@ BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4
|
||||||
TARGET_SPECIFIC_HEADER_PATH := $(COMMON_PATH)/include
|
TARGET_SPECIFIC_HEADER_PATH := $(COMMON_PATH)/include
|
||||||
|
|
||||||
# Init
|
# Init
|
||||||
TARGET_INIT_VENDOR_LIB := //$(COMMON_PATH):libinit_universal7884B
|
TARGET_INIT_VENDOR_LIB := //$(COMMON_PATH):libinit_universal7885
|
||||||
|
|
||||||
# Kernel
|
# Kernel
|
||||||
BOARD_KERNEL_IMAGE_NAME := Image
|
BOARD_KERNEL_IMAGE_NAME := Image
|
||||||
|
|
|
||||||
|
|
@ -13,10 +13,10 @@
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
cc_library_static {
|
cc_library_static {
|
||||||
name: "libinit_universal7884B",
|
name: "libinit_universal7885",
|
||||||
recovery_available: true,
|
recovery_available: true,
|
||||||
whole_static_libs: ["libbase"],
|
whole_static_libs: ["libbase"],
|
||||||
header_libs: ["libbase_headers"],
|
header_libs: ["libbase_headers"],
|
||||||
srcs: ["init_universal7884B.cpp"],
|
srcs: ["init_universal7885.cpp"],
|
||||||
include_dirs: ["system/core/init"]
|
include_dirs: ["system/core/init"]
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -71,6 +71,14 @@ void set_ro_build_prop(const std::string &prop, const std::string &value, bool p
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool hasEnding (std::string const &fullString, std::string const &ending) {
|
||||||
|
if (fullString.length() >= ending.length()) {
|
||||||
|
return (0 == fullString.compare (fullString.length() - ending.length(), ending.length(), ending));
|
||||||
|
} else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void vendor_load_properties() {
|
void vendor_load_properties() {
|
||||||
string model;
|
string model;
|
||||||
|
|
||||||
|
|
@ -79,8 +87,8 @@ void vendor_load_properties() {
|
||||||
model = GetProperty("ro.boot.em.model", "");
|
model = GetProperty("ro.boot.em.model", "");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (model == "SM-A205FN" || model == "SM-A205GN" || model == "SM-A202K" || model == "SM-A205YN") {
|
if (hasEnding(model, "N") || hasEnding(model, "S") || hasEnding(model, "K")) {
|
||||||
property_override("ro.boot.product.hardware.sku", "NFC");
|
property_override("ro.boot.product.hardware.sku", "NFC");
|
||||||
}
|
}
|
||||||
|
|
||||||
set_ro_build_prop("model", model);
|
set_ro_build_prop("model", model);
|
||||||
|
|
@ -9,7 +9,7 @@ LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)
|
||||||
include $(BUILD_PREBUILT)
|
include $(BUILD_PREBUILT)
|
||||||
|
|
||||||
include $(CLEAR_VARS)
|
include $(CLEAR_VARS)
|
||||||
LOCAL_MODULE := init.exynos7884B.rc
|
LOCAL_MODULE := init.exynos7885.rc
|
||||||
LOCAL_MODULE_TAGS := optional
|
LOCAL_MODULE_TAGS := optional
|
||||||
LOCAL_MODULE_CLASS := ETC
|
LOCAL_MODULE_CLASS := ETC
|
||||||
LOCAL_SRC_FILES := etc/$(LOCAL_MODULE)
|
LOCAL_SRC_FILES := etc/$(LOCAL_MODULE)
|
||||||
|
|
@ -17,7 +17,7 @@ LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/init
|
||||||
include $(BUILD_PREBUILT)
|
include $(BUILD_PREBUILT)
|
||||||
|
|
||||||
include $(CLEAR_VARS)
|
include $(CLEAR_VARS)
|
||||||
LOCAL_MODULE := init.exynos7884B.usb.rc
|
LOCAL_MODULE := init.exynos7885.usb.rc
|
||||||
LOCAL_MODULE_TAGS := optional
|
LOCAL_MODULE_TAGS := optional
|
||||||
LOCAL_MODULE_CLASS := ETC
|
LOCAL_MODULE_CLASS := ETC
|
||||||
LOCAL_SRC_FILES := etc/$(LOCAL_MODULE)
|
LOCAL_SRC_FILES := etc/$(LOCAL_MODULE)
|
||||||
|
|
@ -29,7 +29,16 @@ LOCAL_MODULE := ueventd.exynos7884B.rc
|
||||||
LOCAL_MODULE_STEM := ueventd.rc
|
LOCAL_MODULE_STEM := ueventd.rc
|
||||||
LOCAL_MODULE_TAGS := optional
|
LOCAL_MODULE_TAGS := optional
|
||||||
LOCAL_MODULE_CLASS := ETC
|
LOCAL_MODULE_CLASS := ETC
|
||||||
LOCAL_SRC_FILES := etc/$(LOCAL_MODULE_STEM)
|
LOCAL_SRC_FILES := etc/$(LOCAL_MODULE)
|
||||||
|
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR)
|
||||||
|
include $(BUILD_PREBUILT)
|
||||||
|
|
||||||
|
include $(CLEAR_VARS)
|
||||||
|
LOCAL_MODULE := ueventd.exynos7904.rc
|
||||||
|
LOCAL_MODULE_STEM := ueventd.rc
|
||||||
|
LOCAL_MODULE_TAGS := optional
|
||||||
|
LOCAL_MODULE_CLASS := ETC
|
||||||
|
LOCAL_SRC_FILES := etc/$(LOCAL_MODULE)
|
||||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR)
|
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR)
|
||||||
include $(BUILD_PREBUILT)
|
include $(BUILD_PREBUILT)
|
||||||
|
|
||||||
|
|
@ -57,6 +66,14 @@ LOCAL_SRC_FILES := etc/$(LOCAL_MODULE)
|
||||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)
|
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)
|
||||||
include $(BUILD_PREBUILT)
|
include $(BUILD_PREBUILT)
|
||||||
|
|
||||||
|
include $(CLEAR_VARS)
|
||||||
|
LOCAL_MODULE := fstab.exynos7904
|
||||||
|
LOCAL_MODULE_TAGS := optional
|
||||||
|
LOCAL_MODULE_CLASS := ETC
|
||||||
|
LOCAL_SRC_FILES := etc/$(LOCAL_MODULE)
|
||||||
|
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)
|
||||||
|
include $(BUILD_PREBUILT)
|
||||||
|
|
||||||
include $(CLEAR_VARS)
|
include $(CLEAR_VARS)
|
||||||
LOCAL_MODULE := init.target.rc
|
LOCAL_MODULE := init.target.rc
|
||||||
LOCAL_MODULE_TAGS := optional
|
LOCAL_MODULE_TAGS := optional
|
||||||
|
|
|
||||||
18
universal7885-common/rootdir/etc/fstab.exynos7904
Normal file
18
universal7885-common/rootdir/etc/fstab.exynos7904
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
# Android fstab file.
|
||||||
|
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
|
||||||
|
# The filesystem that contains the filesystem checker binary (typically /system) cannot
|
||||||
|
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
|
||||||
|
|
||||||
|
# system and vendor partition will be early-mounted by kernel
|
||||||
|
# /dev/block/platform/13500000.dwmmc0/by-name/system /system ext4 ro wait
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/cache /cache ext4 nosuid,nodev,noatime,barrier=1 wait
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/cache /cache f2fs nosuid,nodev,noatime,inline_xattr,flush_merge,data_flush wait
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/userdata /data ext4 nosuid,nodev,barrier=1,noauto_da_alloc,discard,noatime,lazytime wait,check,quota,reservedsize=128M
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/userdata /data f2fs nosuid,nodev,discard,noatime,lazytime,data_flush wait,check,quota
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/efs /mnt/vendor/efs ext4 noatime,nosuid,nodev,noauto_da_alloc,discard,journal_checksum,data=ordered,errors=panic wait,check
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/misc /misc emmc defaults defaults
|
||||||
|
|
||||||
|
# VOLD :: fstab.a20e
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/hidden /preload ext4 noatime,nosuid,nodev,noauto_da_alloc,discard,journal_checksum,data=ordered,errors=panic voldmanaged=preload:auto,check
|
||||||
|
/devices/platform/13550000.dwmmc2/mmc_host/mmc1* auto vfat defaults voldmanaged=sdcard:auto
|
||||||
|
/devices/platform/13600000.usb/13600000.dwc3* auto auto defaults voldmanaged=usb:auto
|
||||||
231
universal7885-common/rootdir/etc/ueventd.exynos7904.rc
Normal file
231
universal7885-common/rootdir/etc/ueventd.exynos7904.rc
Normal file
|
|
@ -0,0 +1,231 @@
|
||||||
|
/dev/mali0 0666 system system
|
||||||
|
/dev/ion 0666 system system
|
||||||
|
/dev/ump 0666 system graphics
|
||||||
|
/dev/exynos-mem 0660 system graphics
|
||||||
|
/dev/video0 0660 system camera
|
||||||
|
/dev/video1 0660 system camera
|
||||||
|
/dev/video2 0660 system camera
|
||||||
|
/dev/video3 0660 system camera
|
||||||
|
/dev/video20 0660 system system
|
||||||
|
# media0 is used for GSC, DECON, etc
|
||||||
|
/dev/media0 0660 system camera
|
||||||
|
# media1 is used for DECON Ext WB
|
||||||
|
/dev/media1 0660 system graphics
|
||||||
|
# Various devices use the v4l-subdev interface
|
||||||
|
# We declare all such nodes simultaneously here
|
||||||
|
/dev/v4l-subdev0 0660 system camera
|
||||||
|
/dev/v4l-subdev1 0660 system camera
|
||||||
|
/dev/v4l-subdev2 0660 system camera
|
||||||
|
/dev/v4l-subdev3 0660 system camera
|
||||||
|
/dev/v4l-subdev4 0660 system camera
|
||||||
|
/dev/v4l-subdev5 0660 system camera
|
||||||
|
/dev/v4l-subdev6 0660 system camera
|
||||||
|
/dev/v4l-subdev7 0660 system camera
|
||||||
|
/dev/v4l-subdev8 0660 system camera
|
||||||
|
/dev/v4l-subdev9 0660 system camera
|
||||||
|
/dev/v4l-subdev10 0660 system camera
|
||||||
|
/dev/v4l-subdev11 0660 system camera
|
||||||
|
/dev/v4l-subdev12 0660 system camera
|
||||||
|
/dev/v4l-subdev13 0660 system camera
|
||||||
|
/dev/v4l-subdev14 0660 system camera
|
||||||
|
/dev/v4l-subdev15 0660 system camera
|
||||||
|
/dev/v4l-subdev16 0660 system camera
|
||||||
|
/dev/v4l-subdev17 0660 system camera
|
||||||
|
/dev/v4l-subdev18 0660 system camera
|
||||||
|
/dev/v4l-subdev19 0660 system camera
|
||||||
|
# v4l-subdev20 is used for DECON Ext WB
|
||||||
|
/dev/v4l-subdev20 0660 system graphics
|
||||||
|
/dev/v4l-subdev21 0660 system graphics
|
||||||
|
/dev/v4l-subdev32 0660 system graphics
|
||||||
|
|
||||||
|
# gscalers
|
||||||
|
/dev/video23 0660 media graphics
|
||||||
|
/dev/video26 0660 media graphics
|
||||||
|
/dev/video24 0660 media graphics
|
||||||
|
/dev/video27 0660 media graphics
|
||||||
|
/dev/video29 0660 media graphics
|
||||||
|
/dev/video30 0660 media graphics
|
||||||
|
# video31 is used for DECON Ext WB
|
||||||
|
/dev/video31 0660 media graphics
|
||||||
|
|
||||||
|
# mscalers
|
||||||
|
/dev/video50 0660 mediacodec drmrpc
|
||||||
|
/dev/m2m1shot_scaler0 0660 mediacodec drmrpc
|
||||||
|
|
||||||
|
/dev/video55 0666 system graphics
|
||||||
|
/dev/g2d 0660 system graphics
|
||||||
|
/dev/fimg2d 0666 system graphics
|
||||||
|
/dev/i2c-2 0660 system system
|
||||||
|
/dev/HPD 0660 system system
|
||||||
|
|
||||||
|
# mfc
|
||||||
|
/dev/video6 0660 mediacodec mediadrm
|
||||||
|
/dev/video7 0660 mediacodec mediadrm
|
||||||
|
/dev/video8 0660 mediacodec mediadrm
|
||||||
|
/dev/video9 0660 mediacodec mediadrm
|
||||||
|
/dev/video10 0660 mediacodec mediadrm
|
||||||
|
/dev/video11 0660 mediacodec mediadrm
|
||||||
|
|
||||||
|
# camera
|
||||||
|
/dev/video101 0660 cameraserver camera
|
||||||
|
/dev/video102 0660 cameraserver camera
|
||||||
|
/dev/video103 0660 cameraserver camera
|
||||||
|
/dev/video104 0660 cameraserver camera
|
||||||
|
/dev/video107 0660 cameraserver camera
|
||||||
|
/dev/video109 0660 cameraserver camera
|
||||||
|
/dev/video110 0660 cameraserver camera
|
||||||
|
/dev/video111 0660 cameraserver camera
|
||||||
|
/dev/video112 0660 cameraserver camera
|
||||||
|
/dev/video120 0660 cameraserver camera
|
||||||
|
/dev/video121 0660 cameraserver camera
|
||||||
|
/dev/video122 0660 cameraserver camera
|
||||||
|
/dev/video130 0660 cameraserver camera
|
||||||
|
/dev/video131 0660 cameraserver camera
|
||||||
|
/dev/video132 0660 cameraserver camera
|
||||||
|
/dev/video140 0660 cameraserver camera
|
||||||
|
/dev/video141 0660 cameraserver camera
|
||||||
|
/dev/video142 0660 cameraserver camera
|
||||||
|
/dev/video150 0660 cameraserver camera
|
||||||
|
/dev/video151 0660 cameraserver camera
|
||||||
|
/dev/video152 0660 cameraserver camera
|
||||||
|
/dev/video153 0660 cameraserver camera
|
||||||
|
/dev/video154 0660 cameraserver camera
|
||||||
|
/dev/video155 0660 cameraserver camera
|
||||||
|
/dev/video160 0660 cameraserver camera
|
||||||
|
/dev/video161 0660 cameraserver camera
|
||||||
|
/dev/video170 0660 cameraserver camera
|
||||||
|
/dev/video171 0660 cameraserver camera
|
||||||
|
/dev/video172 0660 cameraserver camera
|
||||||
|
/dev/video173 0660 cameraserver camera
|
||||||
|
/dev/video174 0660 cameraserver camera
|
||||||
|
/dev/video175 0660 cameraserver camera
|
||||||
|
/dev/video180 0660 cameraserver camera
|
||||||
|
/dev/video190 0660 cameraserver camera
|
||||||
|
/dev/video191 0660 cameraserver camera
|
||||||
|
/dev/video192 0660 cameraserver camera
|
||||||
|
/dev/video193 0660 cameraserver camera
|
||||||
|
/dev/video210 0660 cameraserver camera
|
||||||
|
/dev/video211 0660 cameraserver camera
|
||||||
|
/dev/video212 0660 cameraserver camera
|
||||||
|
/dev/video213 0660 cameraserver camera
|
||||||
|
/dev/video214 0660 cameraserver camera
|
||||||
|
/dev/video215 0660 cameraserver camera
|
||||||
|
/dev/video216 0660 cameraserver camera
|
||||||
|
/dev/video217 0660 cameraserver camera
|
||||||
|
/dev/video218 0660 cameraserver camera
|
||||||
|
/dev/video219 0660 cameraserver camera
|
||||||
|
/dev/video220 0660 cameraserver camera
|
||||||
|
/dev/video221 0660 cameraserver camera
|
||||||
|
/dev/video222 0660 cameraserver camera
|
||||||
|
/dev/video223 0660 cameraserver camera
|
||||||
|
/dev/video224 0660 cameraserver camera
|
||||||
|
/dev/video225 0660 cameraserver camera
|
||||||
|
/dev/media2 0660 media media
|
||||||
|
/dev/hdcp2 0660 media media
|
||||||
|
|
||||||
|
# jpeg
|
||||||
|
/dev/m2m1shot_jpeg 0660 media media
|
||||||
|
/dev/video12 0660 cameraserver media
|
||||||
|
|
||||||
|
# audio
|
||||||
|
/dev/seiren 0660 system audio
|
||||||
|
|
||||||
|
#Mobicore
|
||||||
|
/dev/mobicore 0700 system system
|
||||||
|
/dev/mobicore-user 0666 radio system
|
||||||
|
|
||||||
|
# Secure MEM driver
|
||||||
|
/dev/s5p-smem 0660 system system
|
||||||
|
|
||||||
|
#cbd
|
||||||
|
/dev/block/mmcblk0p5 0400 radio radio
|
||||||
|
/dev/umts_ramdump0 0660 radio radio
|
||||||
|
|
||||||
|
# DM tools
|
||||||
|
/dev/umts_dm0 0660 radio radio
|
||||||
|
/dev/umts_router 0660 radio radio
|
||||||
|
/dev/ttyGS0 0660 system system
|
||||||
|
/dev/ttyGS1 0660 system system
|
||||||
|
|
||||||
|
# Modem Interface
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/RADIO 0660 system radio
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/radio 0660 system radio
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/CP_DEBUG 0660 radio system
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/cp_debug 0660 radio system
|
||||||
|
/sys/devices/platform/10000.mif_pdata sim/ds_detect 0660 radio system
|
||||||
|
/dev/umts* 0660 system radio
|
||||||
|
/dev/umts_csd 0660 system loop_radio
|
||||||
|
/dev/smd4 0660 system radio
|
||||||
|
/dev/ramdump_memshare 0660 system radio
|
||||||
|
/dev/umts_ciq* 0660 system bridge_rw
|
||||||
|
|
||||||
|
# interactive governor parameters
|
||||||
|
/sys/devices/system/cpu/cpu* cpufreq/interactive/timer_rate 0660 system system
|
||||||
|
/sys/devices/system/cpu/cpu* cpufreq/interactive/timer_slack 0660 system system
|
||||||
|
/sys/devices/system/cpu/cpu* cpufreq/interactive/min_sample_time 0660 system system
|
||||||
|
/sys/devices/system/cpu/cpu* cpufreq/interactive/hispeed_freq 0660 system system
|
||||||
|
/sys/devices/system/cpu/cpu* cpufreq/interactive/target_loads 0660 system system
|
||||||
|
/sys/devices/system/cpu/cpu* cpufreq/interactive/go_hispeed_load 0660 system system
|
||||||
|
/sys/devices/system/cpu/cpu* cpufreq/interactive/above_hispeed_delay 0660 system system
|
||||||
|
/sys/devices/system/cpu/cpu* cpufreq/interactive/boost 0660 system system
|
||||||
|
/sys/devices/system/cpu/cpu* cpufreq/interactive/boostpulse 0200 system system
|
||||||
|
/sys/devices/system/cpu/cpu* cpufreq/interactive/input_boost 0660 system system
|
||||||
|
/sys/devices/system/cpu/cpu* cpufreq/interactive/boostpulse_duration 0660 system system
|
||||||
|
/sys/devices/system/cpu/cpu* cpufreq/interactive/io_is_busy 0660 system system
|
||||||
|
|
||||||
|
# Vision (VPU, SCORE)
|
||||||
|
/dev/vertex0 0660 media media
|
||||||
|
/dev/vertex1 0660 media media
|
||||||
|
|
||||||
|
#SCSC Bluetooth
|
||||||
|
/dev/scsc_h4_0 0660 bluetooth bluetooth
|
||||||
|
|
||||||
|
#SCSC ANT
|
||||||
|
/dev/scsc_ant_0 0660 system system
|
||||||
|
|
||||||
|
#SCSC WLAN
|
||||||
|
/dev/mx_0_r4_gdb 0660 wifi wifi
|
||||||
|
/dev/mx_0_m4_gdb 0660 wifi wifi
|
||||||
|
/dev/mx_0_mmap 0660 wifi wifi
|
||||||
|
/dev/mx_client_test_0 0660 wifi wifi
|
||||||
|
/dev/mx_0_debug_sampler 0660 wifi wifi
|
||||||
|
/dev/mx140_usb_clk_test_0 0660 wifi wifi
|
||||||
|
/dev/scsc_log_collector_0 0660 wifi wifi
|
||||||
|
|
||||||
|
# Google FRP solution
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/PERSISTENT 0660 system system
|
||||||
|
|
||||||
|
# Reactivation Lock solution
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/STEADY 0660 system system
|
||||||
|
|
||||||
|
# Google FRP solution
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/persistent 0660 system system
|
||||||
|
|
||||||
|
# Reactivation Lock solution
|
||||||
|
/dev/block/platform/13500000.dwmmc0/by-name/steady 0660 system system
|
||||||
|
|
||||||
|
# sensorhub
|
||||||
|
/dev/ssp_sensorhub 0660 system system
|
||||||
|
/dev/ssp_data_injection 0660 system system
|
||||||
|
|
||||||
|
# Sensorhub IIO
|
||||||
|
/dev/ssp_sensorhub 0660 system system
|
||||||
|
/dev/iio:device* 0660 system system
|
||||||
|
/sys/devices/platform/13980000.spi/spi_master/spi4/spi4.0/iio:device* buffer/enable 0660 system system
|
||||||
|
/sys/devices/platform/13980000.spi/spi_master/spi4/spi4.0/iio:device* buffer/length 0660 system system
|
||||||
|
/sys/bus/iio/devices/iio:device* 0664 system radio
|
||||||
|
|
||||||
|
# TEEGRIS
|
||||||
|
/dev/tzdev 0666 system system
|
||||||
|
/dev/tziwsock 0666 system system
|
||||||
|
/dev/ionfd2phys 0660 system system
|
||||||
|
/dev/tuihw 0660 system system
|
||||||
|
/dev/tzirs 0660 system system
|
||||||
|
/dev/nwfsdev 0660 system system
|
||||||
|
/dev/tz_shmem_validator 0666 system system
|
||||||
|
/dev/tz_wormhole 0666 system system
|
||||||
|
|
||||||
|
# Sensor
|
||||||
|
/dev/input/event* 0660 system input
|
||||||
|
/sys/devices/virtual/input/input* enable 0660 system input
|
||||||
|
/sys/devices/virtual/input/input* poll_delay 0660 system input
|
||||||
|
|
@ -216,7 +216,8 @@
|
||||||
/(vendor|system/vendor)/bin/hw/android\.hardware\.drm@[0-9]\.[0-9]-service\.widevine u:object_r:hal_drm_widevine_exec:s0
|
/(vendor|system/vendor)/bin/hw/android\.hardware\.drm@[0-9]\.[0-9]-service\.widevine u:object_r:hal_drm_widevine_exec:s0
|
||||||
/(vendor|system/vendor)/bin/hw/android\.hardware\.keymaster@[0-9]\.[0-9]-service\.samsung u:object_r:hal_keymaster_default_exec:s0
|
/(vendor|system/vendor)/bin/hw/android\.hardware\.keymaster@[0-9]\.[0-9]-service\.samsung u:object_r:hal_keymaster_default_exec:s0
|
||||||
/(vendor|system/vendor)/bin/hw/android\.hardware\.nfc@[0-9]\.[0-9]-service\.samsung u:object_r:hal_nfc_default_exec:s0
|
/(vendor|system/vendor)/bin/hw/android\.hardware\.nfc@[0-9]\.[0-9]-service\.samsung u:object_r:hal_nfc_default_exec:s0
|
||||||
/(vendor|system/vendor)/bin/hw/android\.hardware\.usb@[0-9]\.[0-9]-service\.exynos7884B u:object_r:hal_usb_default_exec:s0
|
/(vendor|system/vendor)/bin/hw/android\.hardware\.usb@[0-9]\.[0-9]-service\.exynos7885 u:object_r:hal_usb_default_exec:s0
|
||||||
|
/(vendor|system/vendor)/bin/hw/android\.hardware\.usb@[0-9]\.[0-9]-service\.a10 u:object_r:hal_usb_default_exec:s0
|
||||||
/(vendor|system/vendor)/bin/hw/vendor\.samsung\.hardware\.gnss@[0-9]\.[0-9]-service u:object_r:hal_gnss_default_exec:s0
|
/(vendor|system/vendor)/bin/hw/vendor\.samsung\.hardware\.gnss@[0-9]\.[0-9]-service u:object_r:hal_gnss_default_exec:s0
|
||||||
/(vendor|system/vendor)/firmware(/.*)? u:object_r:vendor_firmware_file:s0
|
/(vendor|system/vendor)/firmware(/.*)? u:object_r:vendor_firmware_file:s0
|
||||||
/(vendor|system/vendor)/bin/hw/android\.hardware\.power(@[0-9]\.[0-9])?-service\.samsung-libperfmgr u:object_r:hal_power_default_exec:s0
|
/(vendor|system/vendor)/bin/hw/android\.hardware\.power(@[0-9]\.[0-9])?-service\.samsung-libperfmgr u:object_r:hal_power_default_exec:s0
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,6 @@
|
||||||
# Call proprietary blob setup
|
# Call proprietary blob setup
|
||||||
$(call inherit-product, vendor/samsung/universal7885-common/universal7885-common-vendor.mk)
|
$(call inherit-product, vendor/samsung/universal7885-common/universal7885-common-vendor.mk)
|
||||||
|
|
||||||
# Dalvik
|
|
||||||
$(call inherit-product, frameworks/native/build/phone-xhdpi-2048-dalvik-heap.mk)
|
|
||||||
|
|
||||||
# Build Fingerprints
|
# Build Fingerprints
|
||||||
$(call inherit-product, $(LOCAL_PATH)/fingerprint.mk)
|
$(call inherit-product, $(LOCAL_PATH)/fingerprint.mk)
|
||||||
|
|
||||||
|
|
@ -54,10 +51,6 @@ PRODUCT_COPY_FILES += \
|
||||||
hardware/samsung_slsi/libbt/conf/bt_did.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_did.conf \
|
hardware/samsung_slsi/libbt/conf/bt_did.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_did.conf \
|
||||||
hardware/samsung_slsi/libbt/conf/bt_vendor.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_vendor.conf
|
hardware/samsung_slsi/libbt/conf/bt_vendor.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_vendor.conf
|
||||||
|
|
||||||
# Boot animation
|
|
||||||
TARGET_SCREEN_HEIGHT := 1560
|
|
||||||
TARGET_SCREEN_WIDTH := 720
|
|
||||||
|
|
||||||
# Camera
|
# Camera
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
android.hardware.camera.provider@2.5-service
|
android.hardware.camera.provider@2.5-service
|
||||||
|
|
@ -75,10 +68,6 @@ PRODUCT_PACKAGES += \
|
||||||
android.hardware.drm@1.2.vendor \
|
android.hardware.drm@1.2.vendor \
|
||||||
android.hardware.drm@1.3.vendor
|
android.hardware.drm@1.3.vendor
|
||||||
|
|
||||||
# Fingerprint
|
|
||||||
PRODUCT_PACKAGES += \
|
|
||||||
android.hardware.biometrics.fingerprint@2.1-service.samsung
|
|
||||||
|
|
||||||
# Gatekeeper
|
# Gatekeeper
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
android.hardware.gatekeeper@1.0-impl \
|
android.hardware.gatekeeper@1.0-impl \
|
||||||
|
|
@ -120,11 +109,9 @@ PRODUCT_PACKAGES += \
|
||||||
# Init
|
# Init
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
fstab.enableswap \
|
fstab.enableswap \
|
||||||
init.exynos7884B.rc \
|
init.exynos7885.rc \
|
||||||
init.exynos7884B.usb.rc \
|
init.exynos7885.usb.rc \
|
||||||
ueventd.exynos7884B.rc \
|
|
||||||
wifi_sec.rc \
|
wifi_sec.rc \
|
||||||
fstab.exynos7884B \
|
|
||||||
init.target.rc \
|
init.target.rc \
|
||||||
init.baseband.rc
|
init.baseband.rc
|
||||||
|
|
||||||
|
|
@ -185,7 +172,6 @@ PRODUCT_COPY_FILES += \
|
||||||
frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml \
|
frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml \
|
||||||
frameworks/native/data/etc/android.hardware.camera.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.xml \
|
frameworks/native/data/etc/android.hardware.camera.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.xml \
|
||||||
frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \
|
frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \
|
||||||
frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml \
|
|
||||||
frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_NFC/android.hardware.nfc.hce.xml \
|
frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_NFC/android.hardware.nfc.hce.xml \
|
||||||
frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_NFC/android.hardware.nfc.hcef.xml \
|
frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_NFC/android.hardware.nfc.hcef.xml \
|
||||||
frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_NFC/android.hardware.nfc.uicc.xml \
|
frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_NFC/android.hardware.nfc.uicc.xml \
|
||||||
|
|
@ -236,11 +222,6 @@ PRODUCT_PACKAGES += \
|
||||||
PRODUCT_COPY_FILES += \
|
PRODUCT_COPY_FILES += \
|
||||||
$(LOCAL_PATH)/configs/public.libraries.txt:$(TARGET_COPY_OUT_VENDOR)/etc/public.libraries.txt
|
$(LOCAL_PATH)/configs/public.libraries.txt:$(TARGET_COPY_OUT_VENDOR)/etc/public.libraries.txt
|
||||||
|
|
||||||
# Recovery
|
|
||||||
PRODUCT_PACKAGES += \
|
|
||||||
fastbootd \
|
|
||||||
init.recovery.exynos7884B.rc
|
|
||||||
|
|
||||||
# Nuke Useless Apps (Mostly GAPPS)
|
# Nuke Useless Apps (Mostly GAPPS)
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
RemovePkgs
|
RemovePkgs
|
||||||
|
|
@ -295,10 +276,6 @@ PRODUCT_PACKAGES += \
|
||||||
android.hardware.thermal@1.0-impl \
|
android.hardware.thermal@1.0-impl \
|
||||||
android.hardware.thermal@1.0-service
|
android.hardware.thermal@1.0-service
|
||||||
|
|
||||||
# USB
|
|
||||||
PRODUCT_PACKAGES += \
|
|
||||||
android.hardware.usb@1.1-service.typec
|
|
||||||
|
|
||||||
# Vibrator
|
# Vibrator
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
android.hardware.vibrator@1.3-service.samsung
|
android.hardware.vibrator@1.3-service.samsung
|
||||||
|
|
|
||||||
31
universal7885-common/usb/typeb/Android.bp
Normal file
31
universal7885-common/usb/typeb/Android.bp
Normal file
|
|
@ -0,0 +1,31 @@
|
||||||
|
//
|
||||||
|
// Copyright (C) 2017 The LineageOS 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_binary {
|
||||||
|
name: "android.hardware.usb@1.0-service.a10",
|
||||||
|
relative_install_path: "hw",
|
||||||
|
init_rc: ["android.hardware.usb@1.0-service.a10.rc"],
|
||||||
|
srcs: ["service.cpp", "Usb.cpp"],
|
||||||
|
shared_libs: [
|
||||||
|
"libcutils",
|
||||||
|
"libhidlbase",
|
||||||
|
"libhidltransport",
|
||||||
|
"liblog",
|
||||||
|
"libhwbinder",
|
||||||
|
"libutils",
|
||||||
|
"libhardware",
|
||||||
|
"android.hardware.usb@1.0",
|
||||||
|
],
|
||||||
|
proprietary: true,
|
||||||
|
}
|
||||||
82
universal7885-common/usb/typeb/Usb.cpp
Normal file
82
universal7885-common/usb/typeb/Usb.cpp
Normal file
|
|
@ -0,0 +1,82 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2017 The LineageOS 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.
|
||||||
|
*/
|
||||||
|
#include <pthread.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#include <utils/Errors.h>
|
||||||
|
#include <utils/StrongPointer.h>
|
||||||
|
|
||||||
|
#include "Usb.h"
|
||||||
|
|
||||||
|
namespace android {
|
||||||
|
namespace hardware {
|
||||||
|
namespace usb {
|
||||||
|
namespace V1_0 {
|
||||||
|
namespace implementation {
|
||||||
|
|
||||||
|
Return<void> Usb::switchRole(const hidl_string &portName,
|
||||||
|
const PortRole &newRole) {
|
||||||
|
(void)portName;
|
||||||
|
(void)newRole;
|
||||||
|
ALOGE("%s: Not supported", __func__);
|
||||||
|
return Void();
|
||||||
|
}
|
||||||
|
|
||||||
|
Return<void> Usb::queryPortStatus() {
|
||||||
|
hidl_vec<PortStatus> currentPortStatus;
|
||||||
|
currentPortStatus.resize(1);
|
||||||
|
|
||||||
|
/* this device is not type C and can only be a sink */
|
||||||
|
currentPortStatus[0].portName = "otg_default";
|
||||||
|
currentPortStatus[0].currentDataRole = PortDataRole::DEVICE;
|
||||||
|
currentPortStatus[0].currentPowerRole = PortPowerRole::SINK;
|
||||||
|
currentPortStatus[0].currentMode = PortMode::UFP;
|
||||||
|
currentPortStatus[0].canChangeMode = false;
|
||||||
|
currentPortStatus[0].canChangeDataRole = false;
|
||||||
|
currentPortStatus[0].canChangePowerRole = false;
|
||||||
|
currentPortStatus[0].supportedModes = PortMode::UFP;
|
||||||
|
|
||||||
|
pthread_mutex_lock(&mLock);
|
||||||
|
if (mCallback != NULL) {
|
||||||
|
Return<void> ret =
|
||||||
|
mCallback->notifyPortStatusChange(currentPortStatus, Status::SUCCESS);
|
||||||
|
if (!ret.isOk())
|
||||||
|
ALOGE("queryPortStatus error %s", ret.description().c_str());
|
||||||
|
} else {
|
||||||
|
ALOGI("Notifying userspace skipped. Callback is NULL");
|
||||||
|
}
|
||||||
|
pthread_mutex_unlock(&mLock);
|
||||||
|
|
||||||
|
return Void();
|
||||||
|
}
|
||||||
|
|
||||||
|
Return<void> Usb::setCallback(const sp<IUsbCallback> &callback) {
|
||||||
|
pthread_mutex_lock(&mLock);
|
||||||
|
|
||||||
|
mCallback = callback;
|
||||||
|
ALOGI("registering callback");
|
||||||
|
|
||||||
|
pthread_mutex_unlock(&mLock);
|
||||||
|
return Void();
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace implementation
|
||||||
|
} // namespace V1_0
|
||||||
|
} // namespace usb
|
||||||
|
} // namespace hardware
|
||||||
|
} // namespace android
|
||||||
52
universal7885-common/usb/typeb/Usb.h
Normal file
52
universal7885-common/usb/typeb/Usb.h
Normal file
|
|
@ -0,0 +1,52 @@
|
||||||
|
#ifndef ANDROID_HARDWARE_USB_V1_0_USB_H
|
||||||
|
#define ANDROID_HARDWARE_USB_V1_0_USB_H
|
||||||
|
|
||||||
|
#include <android/hardware/usb/1.0/IUsb.h>
|
||||||
|
#include <hidl/MQDescriptor.h>
|
||||||
|
#include <hidl/Status.h>
|
||||||
|
#include <utils/Log.h>
|
||||||
|
|
||||||
|
#ifdef LOG_TAG
|
||||||
|
#undef LOG_TAG
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define LOG_TAG "android.hardware.usb@1.0-service.a10"
|
||||||
|
#define UEVENT_MSG_LEN 2048
|
||||||
|
|
||||||
|
namespace android {
|
||||||
|
namespace hardware {
|
||||||
|
namespace usb {
|
||||||
|
namespace V1_0 {
|
||||||
|
namespace implementation {
|
||||||
|
|
||||||
|
using ::android::hardware::usb::V1_0::IUsb;
|
||||||
|
using ::android::hardware::usb::V1_0::IUsbCallback;
|
||||||
|
using ::android::hardware::usb::V1_0::PortRole;
|
||||||
|
using ::android::hidl::base::V1_0::IBase;
|
||||||
|
using ::android::hardware::hidl_array;
|
||||||
|
using ::android::hardware::hidl_memory;
|
||||||
|
using ::android::hardware::hidl_string;
|
||||||
|
using ::android::hardware::hidl_vec;
|
||||||
|
using ::android::hardware::Return;
|
||||||
|
using ::android::hardware::Void;
|
||||||
|
using ::android::sp;
|
||||||
|
|
||||||
|
struct Usb : public IUsb {
|
||||||
|
Return<void> switchRole(const hidl_string& portName, const PortRole& role) override;
|
||||||
|
Return<void> setCallback(const sp<IUsbCallback>& callback) override;
|
||||||
|
Return<void> queryPortStatus() override;
|
||||||
|
|
||||||
|
sp<IUsbCallback> mCallback;
|
||||||
|
pthread_mutex_t mLock = PTHREAD_MUTEX_INITIALIZER;
|
||||||
|
|
||||||
|
private:
|
||||||
|
pthread_t mPoll;
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace implementation
|
||||||
|
} // namespace V1_0
|
||||||
|
} // namespace usb
|
||||||
|
} // namespace hardware
|
||||||
|
} // namespace android
|
||||||
|
|
||||||
|
#endif // ANDROID_HARDWARE_USB_V1_0_USB_H
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
service usb-hal-1-0 /vendor/bin/hw/android.hardware.usb@1.0-service.a10
|
||||||
|
class hal
|
||||||
|
user system
|
||||||
|
group system
|
||||||
49
universal7885-common/usb/typeb/service.cpp
Normal file
49
universal7885-common/usb/typeb/service.cpp
Normal file
|
|
@ -0,0 +1,49 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2017 The LineageOS jProject
|
||||||
|
*
|
||||||
|
* 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <hidl/HidlTransportSupport.h>
|
||||||
|
#include "Usb.h"
|
||||||
|
|
||||||
|
using android::sp;
|
||||||
|
|
||||||
|
// libhwbinder:
|
||||||
|
using android::hardware::configureRpcThreadpool;
|
||||||
|
using android::hardware::joinRpcThreadpool;
|
||||||
|
|
||||||
|
// Generated HIDL files
|
||||||
|
using android::hardware::usb::V1_0::IUsb;
|
||||||
|
using android::hardware::usb::V1_0::implementation::Usb;
|
||||||
|
|
||||||
|
using android::status_t;
|
||||||
|
using android::OK;
|
||||||
|
|
||||||
|
int main() {
|
||||||
|
android::sp<IUsb> service = new Usb();
|
||||||
|
|
||||||
|
configureRpcThreadpool(1, true /*callerWillJoin*/);
|
||||||
|
status_t status = service->registerAsService();
|
||||||
|
|
||||||
|
if (status != OK) {
|
||||||
|
ALOGE("Cannot register USB HAL service");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
ALOGI("USB HAL Ready.");
|
||||||
|
joinRpcThreadpool();
|
||||||
|
// Under noraml cases, execution will not reach this line.
|
||||||
|
ALOGI("USB HAL failed to join thread pool.");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
@ -13,10 +13,10 @@
|
||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
cc_binary {
|
cc_binary {
|
||||||
name: "android.hardware.usb@1.1-service.typec",
|
name: "android.hardware.usb@1.1-service.exynos7885",
|
||||||
relative_install_path: "hw",
|
relative_install_path: "hw",
|
||||||
init_rc: ["android.hardware.usb@1.1-service.typec.rc"],
|
init_rc: ["android.hardware.usb@1.1-service.exynos7885.rc"],
|
||||||
vintf_fragments: ["android.hardware.usb@1.1-service.typec.xml"],
|
vintf_fragments: ["android.hardware.usb@1.1-service.exynos7885.xml"],
|
||||||
srcs: ["service.cpp", "Usb.cpp"],
|
srcs: ["service.cpp", "Usb.cpp"],
|
||||||
cflags: [
|
cflags: [
|
||||||
"-Wall",
|
"-Wall",
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
service vendor.usb-hal-1-1 /vendor/bin/hw/android.hardware.usb@1.1-service.typec
|
service vendor.usb-hal-1-1 /vendor/bin/hw/android.hardware.usb@1.1-service.exynos7885
|
||||||
interface android.hardware.usb@1.1::IUsb default
|
interface android.hardware.usb@1.1::IUsb default
|
||||||
interface android.hardware.usb@1.0::IUsb default
|
interface android.hardware.usb@1.0::IUsb default
|
||||||
class hal
|
class hal
|
||||||
|
|
@ -14,7 +14,7 @@
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define LOG_TAG "android.hardware.usb@1.1-service.typec"
|
#define LOG_TAG "android.hardware.usb@1.1-service.exynos7885"
|
||||||
|
|
||||||
#include <hidl/HidlTransportSupport.h>
|
#include <hidl/HidlTransportSupport.h>
|
||||||
#include "Usb.h"
|
#include "Usb.h"
|
||||||
Loading…
Reference in a new issue