[Galaxy Tab 10.1 Android Development] decatf:
Kernel v4.4

and

Android Open Source Project 8.0

Oreo

for

Samsung Galaxy Tab 10.1

(p4wifi / GT-P7510)

(p4 / GT-P7500)

(p4tmo / SGH-T859)

View attachment 4325125View attachment 4325128
​

I have ported this device to Android Linux kernel v4.4. This is the official Android kernel for Oreo. This ROM requires a completely new kernel and recovery. Read everything before use.

​

Recovery - TWRP BigSys

TWRP BigSys will use a different partition layout in order to have a larger system partition size.

Flashing TWRP-Bigsys with odin/heimdall will overwrite the cache partition. Format the cache partition it in recovery after flashing with odin/heimdall.

Partition layout:

Before:
[ system (578MB) | cache (448MB) | data (16GB/32GB) | hidden / preload (300MB) ]
After:
[ system (1026MB) | data (16GB/32GB) | recovery extra (16MB) | cache (284MB) ]

TWRP BigSys is not compatible with any ROM before Oreo.

BigSys partitioning is based on BigPart for Motorola Xoom.

Kernel - Linux v4.4

This is based on the official Android common kernel. The drivers and platform specific parts ported from the original 3.1.10 kernel.

Working

Tegra 2 platform
Downstream video/avp
Dynamic voltage and frequency scaling
USB (ConfigFS)
- no host mode
Voltage Regulators / Battery / Charger
tps6586x
stmpe811
max17042
p4_battery
nct1008
Display Panel
cmc623
Touch Digitizer
mxt1386
Audio
wm8994
3.5mm jack
voodoo sound driver
Wifi
bcm4330
Bluetooth
bcm4330
GPS
bcm4751
Sensors
mpu3050: gyroscope
kxtf9: accelerometer
ak8975: compass
bh1721fvc: light sensor
Haptics
isa1200
Misc
Samsung misc partition. (Stores reboot mode and proprietary control bits)
Samsung LPM (off mode charging)

Will not work

3G/Cellular modem
xmm6260
tegra usb phy hsic
- No mainline kernel driver for this USB interface
Cameras / Flash
s5k5ccgx
s5k5bbgx
- Incompatible camera stack
HDMI
sii9234
Samsung 30-pin connector
keyboard dock, dongles, accessories

Functional differences

Enable force usb charging at kernel boot (rather than android init).
Add haptic vibration strength.

ROM - Android 8.0 Oreo

The ROM is AOSP based.

It is one ROM and recovery for p4wifi (GT-P7510), p4 (GT-P7500), and p4tmo (SGH-T859) since 3G/cellular will not work in the kernel. There is no difference between the two devices other than the cellular modem.

Customizations:

Advanced reboot menu

NEON emulation

Apollo music app

Working / Not working:

See the list under the kernel section.

First Install

Backup all data to a location off the device.

Install and boot into TWRP BigSys

Format system partition

- Wipe > Advanced Wipe > Check "System" > Swipe to Wipe

Reboot to TWRP BigSys

Install ROM

- (optional) Install GApps

- (optional) Install root

See post #2 on how to report problems

Updating

Install ROM

Downloads

ROM / Recovery

Browser - decatf-chromium

GApps - Open GApps

Known Issues

Known kernel 4.4 issues:

ak8975 compass orientation not reporting data

- test: CPU-z sensors tab shows no data

Wifi chip/firmware crash:

- Connection drops and will not reconnect.

- Low reproducabiliy.

- Bug is known to occur on all tested bcmdhd drivers except stock ICS and espresso10 bcmdhd driver.

- Workaround: Turn off wifi. Turn on wifi.

[*]Battery drain in power off:

- Device is not actually powering off.

- Low reproducabiliy.

- Possible causes:

- tps6586x regulator does not power off (due to i2c transfer errors).

- Hard lock up when CPU1 is offline and wifi sdio bus is on.

- host1x syncpt stuck.​

- test1:

- Proper power off: Press power button for 2 seconds to power on.

- Improper power off: Press power button for 8 seconds to power on.​

- test2: Reboot to recovery hangs after OS shutdown instead of rebooting to recover.

Other known issues:

Android OS stuck at boot logo:

- Cause 1: The HIDL HALs not starting properly

- Cause 2: System services die and loop forever

- Workaround: Reboot device

FAQ

Will X feature work?

- I have ported everything I can to the new kernel. Anything not mentioned is not going to work.

3G / Cellular?

- The Tegra USB driver in mainline kernel does not support the USB interface which connects the modem.

Camera?

- The camera devices are not working on the mainline kernel. The camera blob hasn't worked right since Lollipop anyways.

Can the old 3.1.10 kernel be used on Oreo?

- The old kernel is not working on Oreo.

Can the 4.4 kernel be used on previous ROMs?

- No.

Will this kernel work on Galaxy Tab 8.9?

- No.

How to return to stock partition layout.

Install a non-BigSys TWRP.

Format system and cache partition.

Reboot to TWRP

Change Log

20181011
- android-8.1.0_r48
- Linux 4.4.160

20180814
- android-8.1.0_r42
- Linux 4.4.147

20180416
- android-8.1.0_r19
- Linux 4.4.128
- Disable Android Go configuration
- Add back cache partition
- Fix a potential issue blocking wifi suspend
- Fix an issue with audio not working after suspend
- Fix bluetooth gpios
- Correct a voltage regulator configuration

20180316
- android-8.1.0_r16
- webview 65.0.3325.144
- Signature Spoofing
- Linux 4.4.121
- mainline mfd/m8994 driver

20180213
- Fix SOC (core) process ID 2 initialization
- Add BFQ iosched

20180206
- android-8.1.0_r10
- Linux 4.4.115
- webview 64.0.3282.123

20180110
- android-8.1.0_r6
- Linux 4.4.111
- Night Light feature
- Android Go configuration
- Fix DVFS issues
- Fix 3.5mm headphone plug issues

20171117
- android-8.0.0_r28
- Linux 4.4.98
- local_manifest changes:

device/samsung/p4-common
1095462 p4-common: init: set schedutil rate limit to 30000us
5153c33 Revert "p4-common: init: interactive governor"
0b90b12 Revert "power: enable interactive and interactive boost"
8489850 Revert "p4-common: set interactive governor permissions"
a95ade0 Revert "power: set interactive governor target loads"
d557892 configstore: set vsync phase offsets
881361f p4-common: disable samsung hwc fix
3f1308f p4-common: sched fifo on UI and RenderThreads
260c9e9 p4-common: overlay: change recents thumbnail svelte to limit cache
acfcdcd power: set interactive governor target loads
221576e p4-common: set interactive governor permissions
c8d553b power: enable interactive and interactive boost
ba7e0f6 p4-common: init: interactive governor
e6b1d5c Revert "p4-common: disable wifi direct"
3b2e521 Revert "hwc: move eglswapbuffers from blob into hwc wrapper"
5075a0b hwc: move eglswapbuffers from blob into hwc wrapper

frameworks/base
53cc0b0 hwui: don't use eglSwapBuffersWithDamageKHR

vendor/decatf
a4bef77 set_rt_prios.sh: Move mmc0/dhd_dpc priority into kernel
88a52a6 set_rt_prios.sh: lower wifi task priority and nice value
40db629 Add set_rt_prios.sh

20171109
- Fix CMC623F initialization
20171107
- Support more eMMC chips for BigSys

Acknowledgments

mainlane for donating a device after my original tablet broke.

digetx - downstream tegra video driver, Tegra USB ConfigFS, various work on Tegra devices in mainline.

BigPart developers for devising this method of partitioning.

Donate

Donate to me.​

XDA:DevDB Information

Kernel 4.4 & Android 8.0 Oreo, ROM for the Samsung Galaxy Tab 10.1

Contributors

decatf

Source Code: https://github.com/decatf/

ROM OS Version: 8.x Oreo

ROM Kernel: Linux 4.x

Based On: AOSP

Version Information

Status: Alpha

Created 2017-10-15

Last Updated 2018-10-11