Skip to content

Commit

Permalink
first commit
Browse files Browse the repository at this point in the history
  • Loading branch information
AndroPlus-org committed Sep 19, 2016
0 parents commit 31a7d84
Show file tree
Hide file tree
Showing 13 changed files with 415 additions and 0 deletions.
36 changes: 36 additions & 0 deletions Android.mk
@@ -0,0 +1,36 @@
#
# Copyright 2012 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.
#

# This contains the module build definitions for the hardware-specific
# components for this device.
#
# As much as possible, those components should be built unconditionally,
# with device-specific names to avoid collisions, to avoid device-specific
# bitrot and build breakages. Building a component unconditionally does
# *not* include it on all devices, so it is safe even with hardware-specific
# components.

ifneq ($(filter qcom,$(TARGET_DEVICE)),)

LOCAL_PATH := $(call my-dir)

include $(call all-makefiles-under,$(LOCAL_PATH))

endif

$(shell mkdir -p $(OUT)/obj/SHARED_LIBRARIES/libminui_intermediates)
$(shell touch $(OUT)/obj/SHARED_LIBRARIES/libminui_intermediates/export_includes)

18 changes: 18 additions & 0 deletions AndroidProducts.mk
@@ -0,0 +1,18 @@
#
# Copyright 2012 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.
#

PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/full_kugo.mk
101 changes: 101 additions & 0 deletions BoardConfig.mk
@@ -0,0 +1,101 @@
# Bootloader
#TARGET_BOOTLOADER_BOARD_NAME := MSM8996
TARGET_BOOTLOADER_BOARD_NAME := F5321

# Platform
TARGET_BOARD_PLATFORM := msm8952
TARGET_POWERHAL_VARIANT := qcom

# Architecture
TARGET_ARCH := arm64
TARGET_ARCH_VARIANT := armv8-a
TARGET_CPU_ABI := arm64-v8a
TARGET_CPU_ABI2 :=
TARGET_CPU_VARIANT := cortex-a53

TARGET_2ND_ARCH := arm
TARGET_2ND_ARCH_VARIANT := armv7-a-neon
TARGET_2ND_CPU_ABI := armeabi-v7a
TARGET_2ND_CPU_ABI2 := armeabi
TARGET_2ND_CPU_VARIANT := cortex-a7

TARGET_NO_RADIOIMAGE := true
TARGET_NO_BOOTLOADER := true
TARGET_NO_RECOVERY := false
TARGET_NO_KERNEL := false

# GFX
USE_OPENGL_RENDERER := true
TARGET_USES_ION := true
TARGET_USES_C2D_COMPOSITION := true

MAX_EGL_CACHE_KEY_SIZE := 12*1024
MAX_EGL_CACHE_SIZE := 2048*1024
OVERRIDE_RS_DRIVER := libRSDriver_adreno.so

# Charger
BOARD_CHARGER_ENABLE_SUSPEND := true

# Include an expanded selection of fonts
EXTENDED_FONT_FOOTPRINT := true

# Include build helpers for QCOM proprietary
-include vendor/qcom/proprietary/common/build/proprietary-build.mk

BOARD_KERNEL_CMDLINE := androidboot.hardware=qcom msm_rtb.filter=0x237 ehci-hcd.park=3 androidboot.bootdevice=7824900.sdhci lpm_levels.sleep_disabled=1 earlyprintk enforcing=0 androidboot.selinux=permissive

BOARD_KERNEL_BASE := 0x20000000
BOARD_KERNEL_PAGESIZE := 2048
BOARD_KERNEL_TAGS_OFFSET := 0x01E00000
BOARD_RAMDISK_OFFSET := 0x02000000
BOARD_MKBOOTIMG_ARGS := --ramdisk_offset $(BOARD_RAMDISK_OFFSET) --tags_offset $(BOARD_KERNEL_TAGS_OFFSET)

# prebuilt kernel
TARGET_KERNEL_ARCH := arm64
TARGET_KERNEL_HEADER_ARCH := arm64
TARGET_KERNEL_CROSS_COMPILE_PREFIX := aarch64-linux-android-
TARGET_KERNEL_MODULES := true
BOARD_KERNEL_IMAGE_NAME := kernel
TARGET_PREBUILT_KERNEL := device/sony/kugo/kernel

BOARD_SYSTEMIMAGE_PARTITION_SIZE := 5513412608
BOARD_USERDATAIMAGE_PARTITION_SIZE := 57436708864
BOARD_CACHEIMAGE_PARTITION_SIZE := 209715200
BOARD_FLASH_BLOCK_SIZE := 262144 # (BOARD_KERNEL_PAGESIZE * 64)

TARGET_USES_64_BIT_BINDER := true

BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4
BOARD_HAS_LARGE_FILESYSTEM := true
TARGET_USERIMAGES_USE_EXT4 := true

TARGET_KERNEL_HAVE_EXFAT := true
TARGET_KERNEL_HAVE_NTFS := true

BLOCK_BASED_OTA := false

BOARD_HAS_NO_SELECT_BUTTON := true
TARGET_HW_DISK_ENCRYPTION := true

RECOVERY_SDCARD_ON_DATA := true
TARGET_RECOVERY_FSTAB = device/sony/kugo/recovery.fstab
TW_THEME := portrait_hdpi
TW_HAS_NO_RECOVERY_PARTITION := true
TW_IGNORE_ABS_MT_TRACKING_ID := true
TW_INCLUDE_CRYPTO := true
TW_INCLUDE_FUSE_EXFAT := true
TW_EXTRA_LANGUAGES := true
TW_NEW_ION_HEAP := true
TW_DEFAULT_BRIGHTNESS := 230
TW_CUSTOM_CPU_TEMP_PATH := /sys/class/thermal/thermal_zone4/temp
TARGET_RECOVERY_QCOM_RTC_FIX := true
TW_INPUT_BLACKLIST := "hbtp_vm"
TARGET_RECOVERY_DEVICE_MODULES := libbinder libgui libui libEGL libGLES_trace libGLESv2 libprotobuf-cpp-lite libsync
TW_RECOVERY_ADDITIONAL_RELINK_FILES := $(OUT)/system/lib64/libbinder.so $(OUT)/system/lib64/libgui.so $(OUT)/system/lib64/libui.so $(OUT)/system/lib64/libEGL.so $(OUT)/system/lib64/libGLES_trace.so $(OUT)/system/lib64/libGLESv2.so $(OUT)/system/lib64/libprotobuf-cpp-lite.so $(OUT)/system/lib64/libsync.so

# Include path
TARGET_SPECIFIC_HEADER_PATH := $(LOCAL_PATH)/include

# SELINUX
TARGET_SKIP_SETEXECCON_VOLD_CHECK := true
BOARD_SEPOLICY_DIRS += device/sony/kugo/sepolicy
8 changes: 8 additions & 0 deletions cm.dependencies
@@ -0,0 +1,8 @@
[
{
"remote":"github",
"repository":"CyanogenMod/android_device_qcom_common",
"target_path":"device/qcom/common",
"revision":"cm-13.0"
}
]
28 changes: 28 additions & 0 deletions cm.mk
@@ -0,0 +1,28 @@
# Copyright (C) 2014 The CyanogenMod 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.

$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
$(call inherit-product, frameworks/native/build/phone-xhdpi-2048-dalvik-heap.mk)
# Disable Block based building if https://github.com/Sony-tone/android_buildable_ota exists
$(call inherit-product-if-exists, buildable/ota/DisableBlockBasedOTA.mk)

# Inherit some common CM stuff.
$(call inherit-product, vendor/cm/config/common_full_phone.mk)

# Enhanced NFC
$(call inherit-product, vendor/cm/config/nfc_enhanced.mk)

$(call inherit-product, device/sony/kugo/full_kugo.mk)

PRODUCT_NAME := cm_kugo
36 changes: 36 additions & 0 deletions device.mk
@@ -0,0 +1,36 @@
# Copyright 2014 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.

ifeq ($(TARGET_PREBUILT_KERNEL),)
LOCAL_KERNEL := device/sony/kugo/kernel
else
LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL)
endif

PRODUCT_AAPT_CONFIG := large
PRODUCT_AAPT_PREBUILT_DPI := xxhdpi xhdpi hdpi
PRODUCT_AAPT_PREF_CONFIG := xxhdpi

PRODUCT_PROPERTY_OVERRIDES := \
ro.sf.lcd_density=480 \
ro.usb.pid_suffix=1E8

# Dalvik VM specific for devices with 2048 MB of RAM (Works fine with kugo)
$(call inherit-product-if-exists, frameworks/native/build/phone-xhdpi-2048-dalvik-heap.mk)

# Default.prop overrides to get adb working at boot
ADDITIONAL_DEFAULT_PROPERTIES += \
ro.adb.secure=0 \
ro.secure=0 \
ro.debuggable=1
36 changes: 36 additions & 0 deletions full_kugo.mk
@@ -0,0 +1,36 @@
# Copyright 2014 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.

# Inherit from those products. Most specific first.
$(call inherit-product, device/sony/kugo/device.mk)

# Inherit from those products. Most specific first.
$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk)

PRODUCT_COPY_FILES += \
device/sony/kugo/kernel:/kernel

# Time Zone data for recovery
PRODUCT_COPY_FILES += \
bionic/libc/zoneinfo/tzdata:root/system/usr/share/zoneinfo/tzdata

PRODUCT_PROPERTY_OVERRIDES := \
ro.sf.lcd_density=480 \
ro.usb.pid_suffix=1E8

PRODUCT_NAME := kugo
PRODUCT_DEVICE := kugo
PRODUCT_MODEL := F5321
PRODUCT_BRAND := Sony
PRODUCT_MANUFACTURER := Sony
Binary file added kernel
Binary file not shown.
22 changes: 22 additions & 0 deletions recovery.fstab
@@ -0,0 +1,22 @@
# mount point fstype device

/recovery emmc /dev/block/bootdevice/by-name/FOTAKernel flags=backup=1;display="FOTAKernel";
/ta emmc /dev/block/bootdevice/by-name/TA flags=backup=1;display="TA "Trim-Area"";
/system ext4 /dev/block/bootdevice/by-name/system flags=display="System";mounttodecrypt;
/data ext4 /dev/block/bootdevice/by-name/userdata flags=encryptable=footer;length=-16384;retainlayoutversion;
/cache ext4 /dev/block/bootdevice/by-name/cache
/sdcard1 vfat /dev/block/mmcblk1p1 flags=display="Micro SDcard";storage;wipeingui;removable;
/usbdisk auto /dev/block/sda1 /dev/block/sda flags=display="USB OTG";storage;wipeingui;removable;
/idd ext4 /dev/block/bootdevice/by-name/diag flags=display="Diag";backup=1;
#/rca ext4 /dev/block/bootdevice/by-name/apps_log flags=display="AppsLog";backup=1;usermrf;
/oem ext4 /dev/block/bootdevice/by-name/oem flags=display="OEM";backup=1;
/qns ext4 /dev/block/bootdevice/by-name/Qnovo flags=display="Qnovo";backup=1;

/boot emmc /dev/block/bootdevice/by-name/boot flags=backup=1;display="Kernel";
/modem_fs1 emmc /dev/block/bootdevice/by-name/modemst1 flags=display="modem_fs1 "Baseband"";backup=1;mounttodecrypt;subpartitionof=/boot;
/modem_fs2 emmc /dev/block/bootdevice/by-name/modemst2 flags=display="modem_fs2 "Baseband"";backup=1;mounttodecrypt;subpartitionof=/boot;

/firmware vfat /dev/block/bootdevice/by-name/modem flags=display="Firmware";mounttodecrypt;fsflags=ro,context=u:object_r:firmware_file:s0;
/dsp ext4 /dev/block/bootdevice/by-name/dsp
/persist ext4 /dev/block/bootdevice/by-name/persist
/keymaster emmc /dev/block/bootdevice/by-name/keymaster
57 changes: 57 additions & 0 deletions recovery/root/init.recovery.qcom.rc
@@ -0,0 +1,57 @@
# separate copy needed to use /sbin/linker64 instead of /system/bin/linker64
service sbinqseecomd /sbin/qseecomd
oneshot
disabled
user root
group root
seclabel u:r:recovery:s0

service pulldecryptfiles /sbin/pulldecryptfiles.sh
oneshot
disabled
user root
group root
seclabel u:r:recovery:s0

on early-init
mkdir /firmware 0771 system system
mount debugfs debugfs /sys/kernel/debug
chmod 0755 /sys/kernel/debug

on fs
# needed to make qseecomd work in recovery
symlink /dev/block/platform/soc/7824900.sdhci /dev/block/bootdevice
symlink /system/vendor /vendor
chmod 0660 /dev/qseecom
chown system drmrpc /dev/qseecom
chmod 0664 /dev/ion
chown system system /dev/ion

write /sys/kernel/debug/clearpad/hwtest "XP"

wait /dev/block/bootdevice/by-name/persist
mount ext4 /dev/block/bootdevice/by-name/persist /persist nosuid nodev barrier=1
restorecon_recursive /persist
mkdir /persist/data 0700 system system

wait /dev/block/bootdevice/by-name/dsp
mount ext4 /dev/block/bootdevice/by-name/dsp /dsp ro nosuid nodev barrier=1

wait /dev/block/bootdevice/by-name/modem
mount vfat /dev/block/bootdevice/by-name/modem /firmware ro shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware_file:s0

start pulldecryptfiles

symlink /firmware/image /vendor/firmware

on boot
write /sys/class/android_usb/android0/idVendor 0FCE
write /sys/class/android_usb/android0/idProduct 5${ro.usb.pid_suffix}

write /sys/devices/virtual/input/clearpad/wakeup_gesture 1

on property:ro.crypto.state=encrypted
start sbinqseecomd

on property:ro.crypto.fs_crypto_blkdev=/dev/block/dm-0
stop sbinqseecomd

0 comments on commit 31a7d84

Please sign in to comment.