diff options
author | Praneeth Bajjuri | 2018-07-20 17:11:07 -0500 |
---|---|---|
committer | Praneeth Bajjuri | 2018-09-10 17:13:23 -0500 |
commit | b68d16448b294a12c60c1618622a116b3164cd5a (patch) | |
tree | 0ab0905382b1af1f7a0dc9eb7dd54c53e7fd68e2 | |
parent | 158acbd0254481305b3020b93c785ff9c687d5ea (diff) | |
download | device-ti-beagle-x15-b68d16448b294a12c60c1618622a116b3164cd5a.tar.gz device-ti-beagle-x15-b68d16448b294a12c60c1618622a116b3164cd5a.tar.xz device-ti-beagle-x15-b68d16448b294a12c60c1618622a116b3164cd5a.zip |
beagle-x15: Initial device support
Based of http://git.ti.com/cgit/cgit.cgi/android/device-ti-am57xevm.git/
Branch: d-oreo-mr1-core-release
Initial Android device support for beagle X15 platform.
Processor: http://www.ti.com/product/am5728
Hardware Platform: https://beagleboard.org/x15
Schematics and Platform Info: https://elinux.org/Beagleboard:BeagleBoard-X15
Change-Id: I84936c1cc695832889b07f94f16ecdca9d2b00d2
Signed-off-by: Praneeth Bajjuri <praneeth@ti.com>
Signed-off-by: Mykhailo Sopiha <mykhailo.sopiha@linaro.org>
Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org>
Signed-off-by: Ruslan Trofymenko <ruslan.trofymenko@linaro.org>
-rw-r--r-- | Android.mk | 31 | ||||
-rw-r--r-- | AndroidProducts.mk | 21 | ||||
-rw-r--r-- | BoardConfig.mk | 49 | ||||
-rw-r--r-- | beagle_x15.its | 47 | ||||
-rw-r--r-- | beagle_x15.mk | 24 | ||||
-rw-r--r-- | boot_fit/Android.mk | 25 | ||||
-rw-r--r-- | device.mk | 94 | ||||
-rw-r--r-- | fstab.beagle_x15board | 13 | ||||
-rw-r--r-- | init.beagle_x15board.rc | 17 | ||||
-rw-r--r-- | init.beagle_x15board.usb.rc | 51 | ||||
-rw-r--r-- | manifest.xml | 60 | ||||
-rw-r--r-- | overlay/frameworks/base/core/res/res/values/config.xml | 107 | ||||
-rw-r--r-- | overlay/frameworks/base/packages/SettingsProvider/res/values/config.xml | 24 | ||||
-rw-r--r-- | sepolicy/file.te | 2 | ||||
-rw-r--r-- | sepolicy/file_contexts | 21 | ||||
-rw-r--r-- | sepolicy/healthd.te | 1 | ||||
-rw-r--r-- | sepolicy/init.te | 11 | ||||
-rw-r--r-- | sepolicy/netd.te | 2 | ||||
-rw-r--r-- | sepolicy/pvr.te | 16 | ||||
-rw-r--r-- | tablet_core_hardware_beagle_x15.xml | 39 | ||||
-rw-r--r-- | ueventd.beagle_x15board.rc | 3 |
21 files changed, 658 insertions, 0 deletions
diff --git a/Android.mk b/Android.mk new file mode 100644 index 0000000..6768aca --- /dev/null +++ b/Android.mk | |||
@@ -0,0 +1,31 @@ | |||
1 | # | ||
2 | # Copyright (C) 2018 Texas Instruments Incorporated - http://www.ti.com/ | ||
3 | # | ||
4 | # Licensed under the Apache License, Version 2.0 (the "License"); | ||
5 | # you may not use this file except in compliance with the License. | ||
6 | # You may obtain a copy of the License at | ||
7 | # | ||
8 | # http://www.apache.org/licenses/LICENSE-2.0 | ||
9 | # | ||
10 | # Unless required by applicable law or agreed to in writing, software | ||
11 | # distributed under the License is distributed on an "AS IS" BASIS, | ||
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
13 | # See the License for the specific language governing permissions and | ||
14 | # limitations under the License. | ||
15 | # | ||
16 | |||
17 | # WARNING: Everything listed here will be built on ALL platforms, | ||
18 | # including x86, the emulator, and the SDK. Modules must be uniquely | ||
19 | # named (liblights.panda), and must build everywhere, or limit themselves | ||
20 | # to only building on ARM if they include assembly. Individual makefiles | ||
21 | # are responsible for having their own logic, for fine-grained control. | ||
22 | |||
23 | ifneq ($(filter beagle_x15%, $(TARGET_DEVICE)),) | ||
24 | |||
25 | LOCAL_PATH := $(call my-dir) | ||
26 | |||
27 | # if some modules are built directly from this directory (not subdirectories), | ||
28 | # their rules should be written here. | ||
29 | |||
30 | include $(call all-makefiles-under,$(LOCAL_PATH)) | ||
31 | endif | ||
diff --git a/AndroidProducts.mk b/AndroidProducts.mk new file mode 100644 index 0000000..dcdb188 --- /dev/null +++ b/AndroidProducts.mk | |||
@@ -0,0 +1,21 @@ | |||
1 | # | ||
2 | # Copyright (C) 2018 Texas Instruments Incorporated - http://www.ti.com/ | ||
3 | # | ||
4 | # Licensed under the Apache License, Version 2.0 (the "License"); | ||
5 | # you may not use this file except in compliance with the License. | ||
6 | # You may obtain a copy of the License at | ||
7 | # | ||
8 | # http://www.apache.org/licenses/LICENSE-2.0 | ||
9 | # | ||
10 | # Unless required by applicable law or agreed to in writing, software | ||
11 | # distributed under the License is distributed on an "AS IS" BASIS, | ||
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
13 | # See the License for the specific language governing permissions and | ||
14 | # limitations under the License. | ||
15 | # | ||
16 | |||
17 | PRODUCT_MAKEFILES := \ | ||
18 | $(LOCAL_DIR)/beagle_x15.mk \ | ||
19 | |||
20 | COMMON_LUNCH_CHOICES := \ | ||
21 | beagle_x15-userdebug \ | ||
diff --git a/BoardConfig.mk b/BoardConfig.mk new file mode 100644 index 0000000..9c368e9 --- /dev/null +++ b/BoardConfig.mk | |||
@@ -0,0 +1,49 @@ | |||
1 | # | ||
2 | # Copyright (C) 2018 Texas Instruments Incorporated - http://www.ti.com/ | ||
3 | # | ||
4 | # Licensed under the Apache License, Version 2.0 (the "License"); | ||
5 | # you may not use this file except in compliance with the License. | ||
6 | # You may obtain a copy of the License at | ||
7 | # | ||
8 | # http://www.apache.org/licenses/LICENSE-2.0 | ||
9 | # | ||
10 | # Unless required by applicable law or agreed to in writing, software | ||
11 | # distributed under the License is distributed on an "AS IS" BASIS, | ||
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
13 | # See the License for the specific language governing permissions and | ||
14 | # limitations under the License. | ||
15 | # | ||
16 | |||
17 | TARGET_ARCH := arm | ||
18 | TARGET_ARCH_VARIANT := armv7-a-neon | ||
19 | TARGET_CPU_VARIANT := cortex-a15 | ||
20 | TARGET_CPU_ABI := armeabi-v7a | ||
21 | TARGET_CPU_ABI2 := armeabi | ||
22 | TARGET_CPU_SMP := true | ||
23 | |||
24 | TARGET_BOOTIMAGE_FIT := true | ||
25 | TARGET_USES_64_BIT_BINDER := true | ||
26 | |||
27 | # Use mke2fs to create ext4 images | ||
28 | TARGET_USES_MKE2FS := true | ||
29 | |||
30 | BOARD_FLASH_BLOCK_SIZE := 4096 | ||
31 | |||
32 | BOARD_USERDATAIMAGE_PARTITION_SIZE := 2147483648 # 2GB | ||
33 | BOARD_SYSTEMIMAGE_PARTITION_SIZE := 805306368 # 768MB | ||
34 | BOARD_VENDORIMAGE_PARTITION_SIZE := 268435456 # 256MB | ||
35 | |||
36 | TARGET_USERIMAGES_USE_EXT4 := true | ||
37 | BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4 | ||
38 | |||
39 | TARGET_BOARD_PLATFORM := am57x | ||
40 | TARGET_COPY_OUT_VENDOR := vendor | ||
41 | |||
42 | TARGET_RECOVERY_FSTAB = device/ti/beagle_x15/fstab.beagle_x15board | ||
43 | TARGET_RECOVERY_PIXEL_FORMAT := "BGRA_8888" | ||
44 | TARGET_RELEASETOOLS_EXTENSIONS := device/ti/beagle_x15 | ||
45 | |||
46 | BOARD_SEPOLICY_DIRS += \ | ||
47 | device/ti/beagle_x15/sepolicy | ||
48 | |||
49 | BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED := true | ||
diff --git a/beagle_x15.its b/beagle_x15.its new file mode 100644 index 0000000..0da108d --- /dev/null +++ b/beagle_x15.its | |||
@@ -0,0 +1,47 @@ | |||
1 | /dts-v1/; | ||
2 | |||
3 | / { | ||
4 | description = "beagle-x15"; | ||
5 | #address-cells = <1>; | ||
6 | |||
7 | images { | ||
8 | kernel@1 { | ||
9 | description = "TI kernel"; | ||
10 | data = /incbin/("zImage"); | ||
11 | type = "kernel"; | ||
12 | arch = "arm"; | ||
13 | os = "linux"; | ||
14 | compression = "none"; | ||
15 | load = <0x82000000>; | ||
16 | entry = <0x82000000>; | ||
17 | }; | ||
18 | ramdisk@1 { | ||
19 | description = "Android Ramdisk Image"; | ||
20 | data = /incbin/("ramdisk.img"); | ||
21 | type = "ramdisk"; | ||
22 | arch = "arm"; | ||
23 | os = "linux"; | ||
24 | compression = "none"; | ||
25 | load = <0x88080000>; | ||
26 | entry = <0x88080000>; | ||
27 | }; | ||
28 | fdt@1 { | ||
29 | description = "AM57xx-beagle-x15-revc"; | ||
30 | data = /incbin/("am57xx-beagle-x15-revc.dtb"); | ||
31 | type = "flat_dt"; | ||
32 | arch = "arm"; | ||
33 | compression = "none"; | ||
34 | load = <0x83000000>; | ||
35 | }; | ||
36 | }; | ||
37 | |||
38 | configurations { | ||
39 | default = "am57xx-beagle-x15-revc.dtb"; | ||
40 | am57xx-beagle-x15-revc.dtb { | ||
41 | description = "AM57xx beagle-x15 C"; | ||
42 | kernel = "kernel@1"; | ||
43 | ramdisk = "ramdisk@1"; | ||
44 | fdt = "fdt@1"; | ||
45 | }; | ||
46 | }; | ||
47 | }; | ||
diff --git a/beagle_x15.mk b/beagle_x15.mk new file mode 100644 index 0000000..3ac5e93 --- /dev/null +++ b/beagle_x15.mk | |||
@@ -0,0 +1,24 @@ | |||
1 | # | ||
2 | # Copyright (C) 2018 Texas Instruments Incorporated - http://www.ti.com/ | ||
3 | # | ||
4 | # Licensed under the Apache License, Version 2.0 (the "License"); | ||
5 | # you may not use this file except in compliance with the License. | ||
6 | # You may obtain a copy of the License at | ||
7 | # | ||
8 | # http://www.apache.org/licenses/LICENSE-2.0 | ||
9 | # | ||
10 | # Unless required by applicable law or agreed to in writing, software | ||
11 | # distributed under the License is distributed on an "AS IS" BASIS, | ||
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
13 | # See the License for the specific language governing permissions and | ||
14 | # limitations under the License. | ||
15 | # | ||
16 | |||
17 | $(call inherit-product, device/ti/beagle_x15/device.mk) | ||
18 | $(call inherit-product, $(SRC_TARGET_DIR)/product/full_base.mk) | ||
19 | |||
20 | PRODUCT_NAME := beagle_x15 | ||
21 | PRODUCT_DEVICE := beagle_x15 | ||
22 | PRODUCT_BRAND := Android | ||
23 | PRODUCT_MODEL := AOSP on BeagleBoard X15 | ||
24 | PRODUCT_MANUFACTURER := Texas Instruments Inc | ||
diff --git a/boot_fit/Android.mk b/boot_fit/Android.mk new file mode 100644 index 0000000..c0f0306 --- /dev/null +++ b/boot_fit/Android.mk | |||
@@ -0,0 +1,25 @@ | |||
1 | ifneq ($(filter beagle_x15%, $(TARGET_DEVICE)),) | ||
2 | ifeq ($(TARGET_BOOTIMAGE_FIT), true) | ||
3 | |||
4 | MKIMAGE := $(HOST_OUT_EXECUTABLES)/mkimage | ||
5 | DTC_FLAGS_MKIMAGE = -I dts -O dtb -p 500 -Wno-unit_address_vs_reg | ||
6 | BOARD_DIR := device/ti/beagle_x15 | ||
7 | FIT_DIR := $(PRODUCT_OUT)/obj/fit | ||
8 | ITS := beagle_x15.its | ||
9 | BOOTIMG_FIT := $(PRODUCT_OUT)/boot_fit.img | ||
10 | |||
11 | $(BOOTIMG_FIT): $(INSTALLED_KERNEL_TARGET) $(INSTALLED_RAMDISK_TARGET) $(BOARD_DIR)/$(ITS) $(MKIMAGE) | ||
12 | mkdir -p $(FIT_DIR) | ||
13 | cp $(BOARD_DIR)/$(ITS) $(FIT_DIR) | ||
14 | cp $(INSTALLED_RAMDISK_TARGET) $(FIT_DIR) | ||
15 | cp $(INSTALLED_KERNEL_TARGET) $(FIT_DIR)/zImage | ||
16 | cp $(LOCAL_KERNEL)/*.dtb $(FIT_DIR) | ||
17 | $(MKIMAGE) -D "$(DTC_FLAGS_MKIMAGE)" -f $(FIT_DIR)/$(ITS) $@ | ||
18 | |||
19 | include $(CLEAR_VARS) | ||
20 | LOCAL_MODULE := bootfitimage | ||
21 | LOCAL_ADDITIONAL_DEPENDENCIES := $(BOOTIMG_FIT) | ||
22 | include $(BUILD_PHONY_PACKAGE) | ||
23 | |||
24 | endif | ||
25 | endif | ||
diff --git a/device.mk b/device.mk new file mode 100644 index 0000000..d5fc771 --- /dev/null +++ b/device.mk | |||
@@ -0,0 +1,94 @@ | |||
1 | # | ||
2 | # Copyright (C) 2018 Texas Instruments Incorporated - http://www.ti.com/ | ||
3 | # | ||
4 | # Licensed under the Apache License, Version 2.0 (the "License"); | ||
5 | # you may not use this file except in compliance with the License. | ||
6 | # You may obtain a copy of the License at | ||
7 | # | ||
8 | # http://www.apache.org/licenses/LICENSE-2.0 | ||
9 | # | ||
10 | # Unless required by applicable law or agreed to in writing, software | ||
11 | # distributed under the License is distributed on an "AS IS" BASIS, | ||
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
13 | # See the License for the specific language governing permissions and | ||
14 | # limitations under the License. | ||
15 | # | ||
16 | |||
17 | # Adjust the dalvik heap to be appropriate for a tablet. | ||
18 | $(call inherit-product, frameworks/native/build/tablet-7in-xhdpi-2048-dalvik-heap.mk) | ||
19 | |||
20 | # Set custom settings | ||
21 | DEVICE_PACKAGE_OVERLAYS := device/ti/beagle_x15/overlay | ||
22 | |||
23 | LOCAL_KERNEL := device/ti/beagle_x15-kernel | ||
24 | TARGET_PREBUILT_KERNEL := $(LOCAL_KERNEL)/zImage | ||
25 | PRODUCT_COPY_FILES += $(TARGET_PREBUILT_KERNEL):kernel | ||
26 | |||
27 | # Graphics | ||
28 | PRODUCT_PACKAGES += \ | ||
29 | android.hardware.graphics.allocator@2.0-impl \ | ||
30 | android.hardware.graphics.allocator@2.0-service \ | ||
31 | android.hardware.graphics.composer@2.1-impl \ | ||
32 | android.hardware.graphics.composer@2.1-service \ | ||
33 | android.hardware.graphics.mapper@2.0-impl \ | ||
34 | android.hardware.graphics.mapper@2.0-service \ | ||
35 | android.hardware.drm@1.0-impl \ | ||
36 | android.hardware.drm@1.0-service \ | ||
37 | android.hardware.keymaster@3.0-impl \ | ||
38 | android.hardware.keymaster@3.0-service \ | ||
39 | android.hardware.audio@2.0-impl \ | ||
40 | android.hardware.audio.effect@2.0-impl \ | ||
41 | libdrm \ | ||
42 | libdrm_omap \ | ||
43 | hwcomposer.am57x \ | ||
44 | |||
45 | # Memtrack | ||
46 | PRODUCT_PACKAGES += \ | ||
47 | android.hardware.memtrack@1.0-impl \ | ||
48 | android.hardware.memtrack@1.0-service \ | ||
49 | |||
50 | PRODUCT_PROPERTY_OVERRIDES += \ | ||
51 | ro.opengles.version=131072 \ | ||
52 | ro.sf.lcd_density=160 \ | ||
53 | |||
54 | # All VNDK libraries (HAL interfaces, VNDK, VNDK-SP, LL-NDK) | ||
55 | PRODUCT_PACKAGES += vndk_package | ||
56 | |||
57 | # USB | ||
58 | PRODUCT_PACKAGES += \ | ||
59 | android.hardware.usb@1.0-service \ | ||
60 | |||
61 | PRODUCT_COPY_FILES += \ | ||
62 | frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \ | ||
63 | frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \ | ||
64 | |||
65 | PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ | ||
66 | persist.sys.usb.config=mtp \ | ||
67 | |||
68 | |||
69 | PRODUCT_COPY_FILES += \ | ||
70 | device/ti/beagle_x15/tablet_core_hardware_beagle_x15.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/tablet_core_hardware_beagle_x15.xml \ | ||
71 | device/ti/beagle_x15/manifest.xml:$(TARGET_COPY_OUT_VENDOR)/manifest.xml \ | ||
72 | device/ti/beagle_x15/init.beagle_x15board.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.beagle_x15board.rc \ | ||
73 | device/ti/beagle_x15/init.beagle_x15board.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.beagle_x15board.usb.rc \ | ||
74 | device/ti/beagle_x15/ueventd.beagle_x15board.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \ | ||
75 | device/ti/beagle_x15/fstab.beagle_x15board:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.beagle_x15board \ | ||
76 | frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \ | ||
77 | |||
78 | # Static modprobe for recovery image | ||
79 | PRODUCT_PACKAGES += \ | ||
80 | toybox_static \ | ||
81 | |||
82 | PRODUCT_CHARACTERISTICS := tablet,nosdcard | ||
83 | |||
84 | PRODUCT_PACKAGES += \ | ||
85 | toybox_vendor \ | ||
86 | Launcher3 \ | ||
87 | WallpaperPicker \ | ||
88 | sh_vendor \ | ||
89 | vintf \ | ||
90 | netutils-wrapper-1.0 \ | ||
91 | messaging \ | ||
92 | |||
93 | PRODUCT_PACKAGES += \ | ||
94 | bootfitimage | ||
diff --git a/fstab.beagle_x15board b/fstab.beagle_x15board new file mode 100644 index 0000000..fc7ef89 --- /dev/null +++ b/fstab.beagle_x15board | |||
@@ -0,0 +1,13 @@ | |||
1 | # Android fstab file. | ||
2 | # <src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags> | ||
3 | # The filesystem that contains the filesystem checker binary (typically /system) cannot | ||
4 | # specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK | ||
5 | |||
6 | /dev/block/platform/44000000.ocp/480b4000.mmc/by-name/userdata /data ext4 noatime,nosuid,nodev wait,check,quota | ||
7 | /dev/block/platform/44000000.ocp/480b4000.mmc/by-name/recovery /recovery emmc defaults defaults | ||
8 | /dev/block/platform/44000000.ocp/480b4000.mmc/by-name/boot /boot emmc defaults defaults | ||
9 | /dev/block/platform/44000000.ocp/480b4000.mmc/by-name/misc /misc emmc defaults defaults | ||
10 | |||
11 | /devices/platform/44000000.ocp/488c0000.omap_dwc3_2/488d0000.usb* auto auto defaults voldmanaged=usb0:auto | ||
12 | /devices/platform/44000000.ocp/48880000.omap_dwc3_1/48890000.usb* auto auto defaults voldmanaged=usb1:auto | ||
13 | /devices/platform/44000000.ocp/4809c000.mmc/mmc_host* auto auto defaults voldmanaged=sdcard1:auto | ||
diff --git a/init.beagle_x15board.rc b/init.beagle_x15board.rc new file mode 100644 index 0000000..24d6a65 --- /dev/null +++ b/init.beagle_x15board.rc | |||
@@ -0,0 +1,17 @@ | |||
1 | import /vendor/etc/init/hw/init.beagle_x15board.usb.rc | ||
2 | |||
3 | on post-fs-data | ||
4 | |||
5 | setprop vold.post_fs_data_done 1 | ||
6 | |||
7 | #enabling thermal zone for mpu | ||
8 | write /sys/class/thermal/thermal_zone0/mode enabled | ||
9 | |||
10 | on fs | ||
11 | mount_all /vendor/etc/fstab.beagle_x15board | ||
12 | |||
13 | service pvrsrvinit /vendor/bin/pvrsrvctl --start | ||
14 | class core | ||
15 | user root | ||
16 | group root | ||
17 | oneshot | ||
diff --git a/init.beagle_x15board.usb.rc b/init.beagle_x15board.usb.rc new file mode 100644 index 0000000..51f08bb --- /dev/null +++ b/init.beagle_x15board.usb.rc | |||
@@ -0,0 +1,51 @@ | |||
1 | on boot | ||
2 | mkdir /config/usb_gadget/g1 0770 shell shell | ||
3 | mkdir /config/usb_gadget/g1/strings/0x409 0770 shell shell | ||
4 | write /config/usb_gadget/g1/bcdUSB 0x0200 | ||
5 | write /config/usb_gadget/g1/idVendor 0x0451 | ||
6 | write /config/usb_gadget/g1/bcdDevice 0x0223 | ||
7 | write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno} | ||
8 | write /config/usb_gadget/g1/strings/0x409/manufacturer ${ro.product.manufacturer} | ||
9 | write /config/usb_gadget/g1/strings/0x409/product ${ro.product.model} | ||
10 | mkdir /config/usb_gadget/g1/functions/ffs.adb | ||
11 | mkdir /config/usb_gadget/g1/functions/ffs.mtp | ||
12 | mkdir /config/usb_gadget/g1/configs/b.1 0770 shell shell | ||
13 | mkdir /config/usb_gadget/g1/configs/b.1/strings/0x409 0770 shell shell | ||
14 | write /config/usb_gadget/g1/os_desc/b_vendor_code 0x1 | ||
15 | write /config/usb_gadget/g1/os_desc/qw_sign "MSFT100" | ||
16 | write /config/usb_gadget/g1/configs/b.1/MaxPower 120 | ||
17 | mkdir /dev/input 0755 root root | ||
18 | mkdir /dev/usb-ffs 0775 shell shell | ||
19 | mkdir /dev/usb-ffs/adb 0770 shell shell | ||
20 | mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=2000 | ||
21 | mkdir /dev/usb-ffs/mtp 0770 mtp mtp | ||
22 | mount functionfs mtp /dev/usb-ffs/mtp rmode=0770,fmode=0660,uid=1024,gid=1024,no_disconnect=1 | ||
23 | setprop sys.usb.mtp.device_type 3 | ||
24 | setprop sys.usb.configfs 1 | ||
25 | symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1 | ||
26 | |||
27 | on property:sys.usb.config=none && property:sys.usb.configfs=1 | ||
28 | write /config/usb_gadget/g1/os_desc/use 0 | ||
29 | |||
30 | on property:sys.usb.ffs.mtp.ready=1 && property:sys.usb.config=mtp && property:sys.usb.configfs=1 | ||
31 | write /config/usb_gadget/g1/idProduct 0xD108 | ||
32 | write /config/usb_gadget/g1/os_desc/use 1 | ||
33 | symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 | ||
34 | |||
35 | on property:sys.usb.ffs.ready=1 && property:sys.usb.ffs.mtp.ready=1 && property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1 | ||
36 | write /config/usb_gadget/g1/idProduct 0xD109 | ||
37 | write /config/usb_gadget/g1/os_desc/use 1 | ||
38 | symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 | ||
39 | |||
40 | on property:sys.usb.ffs.mtp.ready=1 && property:sys.usb.config=ptp && property:sys.usb.configfs=1 | ||
41 | write /config/usb_gadget/g1/idProduct 0xD10D | ||
42 | write /config/usb_gadget/g1/os_desc/use 1 | ||
43 | symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 | ||
44 | |||
45 | on property:sys.usb.ffs.ready=1 && property:sys.usb.ffs.mtp.ready=1 && property:sys.usb.config=ptp,adb && property:sys.usb.configfs=1 | ||
46 | write /config/usb_gadget/g1/idProduct 0xD10E | ||
47 | write /config/usb_gadget/g1/os_desc/use 1 | ||
48 | symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1 | ||
49 | |||
50 | on property:sys.usb.config=adb && property:sys.usb.configfs=1 | ||
51 | write /config/usb_gadget/g1/idProduct 0xD101 | ||
diff --git a/manifest.xml b/manifest.xml new file mode 100644 index 0000000..f098ee2 --- /dev/null +++ b/manifest.xml | |||
@@ -0,0 +1,60 @@ | |||
1 | <manifest version="1.0" type="device"> | ||
2 | <hal format="hidl"> | ||
3 | <name>android.hardware.drm</name> | ||
4 | <transport>hwbinder</transport> | ||
5 | <version>1.0</version> | ||
6 | <interface> | ||
7 | <name>ICryptoFactory</name> | ||
8 | <instance>default</instance> | ||
9 | </interface> | ||
10 | <interface> | ||
11 | <name>IDrmFactory</name> | ||
12 | <instance>default</instance> | ||
13 | </interface> | ||
14 | </hal> | ||
15 | <hal format="hidl"> | ||
16 | <name>android.hardware.graphics.allocator</name> | ||
17 | <transport>hwbinder</transport> | ||
18 | <version>2.0</version> | ||
19 | <interface> | ||
20 | <name>IAllocator</name> | ||
21 | <instance>default</instance> | ||
22 | </interface> | ||
23 | </hal> | ||
24 | <hal format="hidl"> | ||
25 | <name>android.hardware.graphics.composer</name> | ||
26 | <transport>hwbinder</transport> | ||
27 | <version>2.1</version> | ||
28 | <interface> | ||
29 | <name>IComposer</name> | ||
30 | <instance>default</instance> | ||
31 | </interface> | ||
32 | </hal> | ||
33 | <hal format="hidl"> | ||
34 | <name>android.hardware.graphics.mapper</name> | ||
35 | <transport arch="32+64">passthrough</transport> | ||
36 | <version>2.0</version> | ||
37 | <interface> | ||
38 | <name>IMapper</name> | ||
39 | <instance>default</instance> | ||
40 | </interface> | ||
41 | </hal> | ||
42 | <hal format="hidl"> | ||
43 | <name>android.hardware.memtrack</name> | ||
44 | <transport>hwbinder</transport> | ||
45 | <version>1.0</version> | ||
46 | <interface> | ||
47 | <name>IMemtrack</name> | ||
48 | <instance>default</instance> | ||
49 | </interface> | ||
50 | </hal> | ||
51 | <hal format="hidl"> | ||
52 | <name>android.hardware.configstore</name> | ||
53 | <transport>hwbinder</transport> | ||
54 | <version>1.0</version> | ||
55 | <interface> | ||
56 | <name>ISurfaceFlingerConfigs</name> | ||
57 | <instance>default</instance> | ||
58 | </interface> | ||
59 | </hal> | ||
60 | </manifest> | ||
diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml new file mode 100644 index 0000000..15ddf65 --- /dev/null +++ b/overlay/frameworks/base/core/res/res/values/config.xml | |||
@@ -0,0 +1,107 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <!-- | ||
3 | /* | ||
4 | ** Copyright 2011, The Android Open Source Project | ||
5 | ** | ||
6 | ** Licensed under the Apache License, Version 2.0 (the "License"); | ||
7 | ** you may not use this file except in compliance with the License. | ||
8 | ** You may obtain a copy of the License at | ||
9 | ** | ||
10 | ** http://www.apache.org/licenses/LICENSE-2.0 | ||
11 | ** | ||
12 | ** Unless required by applicable law or agreed to in writing, software | ||
13 | ** distributed under the License is distributed on an "AS IS" BASIS, | ||
14 | ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
15 | ** See the License for the specific language governing permissions and | ||
16 | ** limitations under the License. | ||
17 | */ | ||
18 | --> | ||
19 | |||
20 | <!-- These resources are around just to allow their values to be customized | ||
21 | for different hardware and product builds. --> | ||
22 | <resources> | ||
23 | |||
24 | <!-- Enable multi-user. --> | ||
25 | <bool name="config_enableMultiUserUI">true</bool> | ||
26 | <!-- Arbitrary max 8 users. --> | ||
27 | <integer name="config_multiuserMaximumUsers">8</integer> | ||
28 | |||
29 | <!-- This device is not "voice capable"; it's data-only. --> | ||
30 | <bool name="config_voice_capable">false</bool> | ||
31 | |||
32 | <!-- This device does not allow sms service. --> | ||
33 | <bool name="config_sms_capable">false</bool> | ||
34 | |||
35 | <!-- List of regexpressions describing the interface (if any) that represent tetherable | ||
36 | Wifi interfaces. If the device doesn't want to support tethering over Wifi this | ||
37 | should be empty. An example would be "softap.*" --> | ||
38 | <string-array translatable="false" name="config_tether_wifi_regexs"> | ||
39 | </string-array> | ||
40 | |||
41 | <!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering --> | ||
42 | <!-- [1,7,9] for TYPE_WIFI, TYPE_BLUETOOTH and TYPE_ETHERNET--> | ||
43 | <integer-array translatable="false" name="config_tether_upstream_types"> | ||
44 | <item>9</item> | ||
45 | </integer-array> | ||
46 | |||
47 | <!-- This string array should be overridden by the device to present a list of network | ||
48 | attributes. This is used by the connectivity manager to decide which networks can coexist | ||
49 | based on the hardware --> | ||
50 | <!-- An Array of "[Connection name],[ConnectivityManager connection type], | ||
51 | [associated radio-type],[priority],[restoral-timer(ms)],[dependencyMet] --> | ||
52 | <!-- the 5th element "resore-time" indicates the number of milliseconds to delay | ||
53 | before automatically restore the default connection. Set -1 if the connection | ||
54 | does not require auto-restore. --> | ||
55 | <!-- the 6th element indicates boot-time dependency-met value. --> | ||
56 | <string-array translatable="false" name="networkAttributes"> | ||
57 | <item>"ethernet,9,9,0,-1,true"</item> | ||
58 | </string-array> | ||
59 | |||
60 | <!-- This string array should be overridden by the device to present a list of radio | ||
61 | attributes. This is used by the connectivity manager to decide which networks can coexist | ||
62 | based on the hardware --> | ||
63 | <!-- An Array of "[ConnectivityManager connectionType], | ||
64 | [# simultaneous connection types]" --> | ||
65 | <string-array translatable="false" name="radioAttributes"> | ||
66 | <item>"9,1"</item> | ||
67 | </string-array> | ||
68 | |||
69 | <!-- Boolean indicating whether the wifi chipset has dual frequency band support --> | ||
70 | <bool translatable="false" name="config_wifi_dual_band_support">true</bool> | ||
71 | |||
72 | <!-- List of regexpressions describing the interface (if any) that represent tetherable | ||
73 | bluetooth interfaces. If the device doesn't want to support tethering over bluetooth this | ||
74 | should be empty. --> | ||
75 | <string-array translatable="false" name="config_tether_bluetooth_regexs"> | ||
76 | </string-array> | ||
77 | |||
78 | <!-- Separate software navigation bar required on this device. --> | ||
79 | <bool name="config_showNavigationBar">true</bool> | ||
80 | |||
81 | <!-- Whether WiFi display is supported by this device. | ||
82 | There are many prerequisites for this feature to work correctly. | ||
83 | Here are a few of them: | ||
84 | * The WiFi radio must support WiFi P2P. | ||
85 | * The WiFi radio must support concurrent connections to the WiFi display and | ||
86 | to an access point. | ||
87 | * The Audio Flinger audio_policy.conf file must specify a rule for the "r_submix" | ||
88 | remote submix module. This module is used to record and stream system | ||
89 | audio output to the WiFi display encoder in the media server. | ||
90 | * The remote submix module "audio.r_submix.default" must be installed on the device. | ||
91 | * The device must be provisioned with HDCP keys (for protected content). | ||
92 | --> | ||
93 | <bool name="config_enableWifiDisplay">false</bool> | ||
94 | |||
95 | <!-- Default list of files pinned by the Pinner Service --> | ||
96 | <string-array translatable="false" name="config_defaultPinnerServiceFiles"> | ||
97 | <item>"/system/framework/arm/boot-framework.oat"</item> | ||
98 | <item>"/system/framework/arm/boot-framework.vdex"</item> | ||
99 | <item>"/system/framework/oat/arm/services.odex"</item> | ||
100 | <item>"/system/framework/oat/arm/services.vdex"</item> | ||
101 | <item>"/system/framework/arm/boot.oat"</item> | ||
102 | <item>"/system/framework/arm/boot.vdex"</item> | ||
103 | <item>"/system/framework/arm/boot-core-libart.oat"</item> | ||
104 | <item>"/system/framework/arm/boot-core-libart.vdex"</item> | ||
105 | </string-array> | ||
106 | |||
107 | </resources> | ||
diff --git a/overlay/frameworks/base/packages/SettingsProvider/res/values/config.xml b/overlay/frameworks/base/packages/SettingsProvider/res/values/config.xml new file mode 100644 index 0000000..3015350 --- /dev/null +++ b/overlay/frameworks/base/packages/SettingsProvider/res/values/config.xml | |||
@@ -0,0 +1,24 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <!-- Copyright (C) 2007 The Android Open Source Project | ||
3 | |||
4 | Licensed under the Apache License, Version 2.0 (the "License"); | ||
5 | you may not use this file except in compliance with the License. | ||
6 | You may obtain a copy of the License at | ||
7 | |||
8 | http://www.apache.org/licenses/LICENSE-2.0 | ||
9 | |||
10 | Unless required by applicable law or agreed to in writing, software | ||
11 | distributed under the License is distributed on an "AS IS" BASIS, | ||
12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
13 | See the License for the specific language governing permissions and | ||
14 | limitations under the License. | ||
15 | --> | ||
16 | |||
17 | <resources> | ||
18 | <!-- Turn off GPS as a default. --> | ||
19 | <string name="def_location_providers_allowed" translatable="false"></string> | ||
20 | <!-- Disable lock screen --> | ||
21 | <bool name="def_lockscreen_disabled">true</bool> | ||
22 | <!-- Keep screen on always --> | ||
23 | <bool name="def_stay_on_while_plugged_in">true</bool> | ||
24 | </resources> | ||
diff --git a/sepolicy/file.te b/sepolicy/file.te new file mode 100644 index 0000000..7162631 --- /dev/null +++ b/sepolicy/file.te | |||
@@ -0,0 +1,2 @@ | |||
1 | # sysfs types | ||
2 | type sysfs_socinfo, sysfs_type, fs_type; | ||
diff --git a/sepolicy/file_contexts b/sepolicy/file_contexts new file mode 100644 index 0000000..c36cab0 --- /dev/null +++ b/sepolicy/file_contexts | |||
@@ -0,0 +1,21 @@ | |||
1 | #Console | ||
2 | /dev/ttyS2 u:object_r:console_device:s0 | ||
3 | |||
4 | #Graphics | ||
5 | /dev/dri/card0 u:object_r:gpu_device:s0 | ||
6 | /dev/dri/controlD64 u:object_r:gpu_device:s0 | ||
7 | /dev/dri/renderD128 u:object_r:gpu_device:s0 | ||
8 | /dev/pvr_sync u:object_r:gpu_device:s0 | ||
9 | |||
10 | /vendor/bin/pvrsrvctl u:object_r:pvr_exec:s0 | ||
11 | /vendor/bin/pvrsrvinit u:object_r:pvr_exec:s0 | ||
12 | |||
13 | # Sysfs | ||
14 | /sys/devices/soc0(/.*)? u:object_r:sysfs_socinfo:s0 | ||
15 | |||
16 | #Block devices | ||
17 | /dev/block/platform/44000000.ocp/480b4000.mmc/by-name/system u:object_r:system_block_device:s0 | ||
18 | /dev/block/platform/44000000.ocp/480b4000.mmc/by-name/recovery u:object_r:recovery_block_device:s0 | ||
19 | /dev/block/platform/44000000.ocp/480b4000.mmc/by-name/cache u:object_r:cache_block_device:s0 | ||
20 | /dev/block/platform/44000000.ocp/480b4000.mmc/by-name/userdata u:object_r:userdata_block_device:s0 | ||
21 | /dev/block/platform/44000000.ocp/480b4000.mmc/by-name/misc u:object_r:misc_block_device:s0 | ||
diff --git a/sepolicy/healthd.te b/sepolicy/healthd.te new file mode 100644 index 0000000..d4f839d --- /dev/null +++ b/sepolicy/healthd.te | |||
@@ -0,0 +1 @@ | |||
allow healthd self:capability2 wake_alarm; | |||
diff --git a/sepolicy/init.te b/sepolicy/init.te new file mode 100644 index 0000000..2329198 --- /dev/null +++ b/sepolicy/init.te | |||
@@ -0,0 +1,11 @@ | |||
1 | #For loading modules via init.rc (ex: wifi) | ||
2 | allow init self:capability sys_module; | ||
3 | #Create symlinks for storage | ||
4 | allow init tmpfs:lnk_file create_file_perms; | ||
5 | # Allow module insertion | ||
6 | allow init vendor_file:system module_load; | ||
7 | # Configfs | ||
8 | allow init configfs:file write; | ||
9 | allow init configfs:lnk_file { create unlink } ; | ||
10 | |||
11 | dontaudit init proc:file write; | ||
diff --git a/sepolicy/netd.te b/sepolicy/netd.te new file mode 100644 index 0000000..954fc6a --- /dev/null +++ b/sepolicy/netd.te | |||
@@ -0,0 +1,2 @@ | |||
1 | dontaudit netd self:capability sys_module; | ||
2 | dontaudit netd kernel:system module_request; | ||
diff --git a/sepolicy/pvr.te b/sepolicy/pvr.te new file mode 100644 index 0000000..cd57633 --- /dev/null +++ b/sepolicy/pvr.te | |||
@@ -0,0 +1,16 @@ | |||
1 | type pvr, domain; | ||
2 | type pvr_exec, exec_type, vendor_file_type, file_type; | ||
3 | |||
4 | # Started by init | ||
5 | init_daemon_domain(pvr) | ||
6 | |||
7 | # allow access to /dev/dri/ | ||
8 | allow pvr gpu_device:chr_file rw_file_perms; | ||
9 | |||
10 | # allow graphics driver initialization | ||
11 | allow pvr self:capability sys_module; | ||
12 | allow pvr vendor_file:system module_load; | ||
13 | |||
14 | # allow reading /sys/devices/soc0/machine | ||
15 | allow pvr sysfs_socinfo:dir { r_dir_perms }; | ||
16 | allow pvr sysfs_socinfo:file { r_file_perms }; | ||
diff --git a/tablet_core_hardware_beagle_x15.xml b/tablet_core_hardware_beagle_x15.xml new file mode 100644 index 0000000..d67b3a9 --- /dev/null +++ b/tablet_core_hardware_beagle_x15.xml | |||
@@ -0,0 +1,39 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <!-- Copyright (C) 2010 The Android Open Source Project | ||
3 | |||
4 | Licensed under the Apache License, Version 2.0 (the "License"); | ||
5 | you may not use this file except in compliance with the License. | ||
6 | You may obtain a copy of the License at | ||
7 | |||
8 | http://www.apache.org/licenses/LICENSE-2.0 | ||
9 | |||
10 | Unless required by applicable law or agreed to in writing, software | ||
11 | distributed under the License is distributed on an "AS IS" BASIS, | ||
12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
13 | See the License for the specific language governing permissions and | ||
14 | limitations under the License. | ||
15 | --> | ||
16 | |||
17 | <!-- These are the hardware components that all handheld devices | ||
18 | must include. Devices with optional hardware must also include extra | ||
19 | hardware files, per the comments below. | ||
20 | |||
21 | Handheld devices include phones, mobile Internet devices (MIDs), | ||
22 | Personal Media Players (PMPs), small tablets (7" or less), and similar | ||
23 | devices. | ||
24 | --> | ||
25 | <permissions> | ||
26 | <feature name="android.software.cts" /> | ||
27 | <!-- <feature name="android.hardware.audio.output" /> --> | ||
28 | <feature name="android.hardware.touchscreen" /> | ||
29 | <feature name="android.hardware.faketouch" /> | ||
30 | <feature name="android.hardware.microphone" /> | ||
31 | <feature name="android.hardware.screen.landscape" /> | ||
32 | <!-- <feature name="android.hardware.bluetooth" /> --> | ||
33 | <feature name="android.software.app_widgets" /> | ||
34 | <feature name="android.software.home_screen" /> | ||
35 | <!-- Feature to specify if the device supports adding device admins. --> | ||
36 | <feature name="android.software.device_admin" /> | ||
37 | <feature name="android.software.backup" /> | ||
38 | <!-- feature name="android.software.voice_recognizers" />--> | ||
39 | </permissions> | ||
diff --git a/ueventd.beagle_x15board.rc b/ueventd.beagle_x15board.rc new file mode 100644 index 0000000..06024f6 --- /dev/null +++ b/ueventd.beagle_x15board.rc | |||
@@ -0,0 +1,3 @@ | |||
1 | # for android sync framework | ||
2 | /dev/pvr_sync 0666 system graphics | ||
3 | /dev/pvrsrvkm 0666 system graphics | ||