PINE64 PineTab (pine64-pinetab)

== Contributors ==
* MartijnBraam
* z3ntu
* drebrez
* Danct12
== Users owning this device ==
== Installation ==
The PineTab will boot from a bootable microSD card if it is plugged, and fall back to booting from internal eMMC. You can install postmarketOS on either of them (or even on both). 
Build your image with pmbootstrap using pmbootstrap install --sdcard. Either set a micro SD card as target, or boot your PineTab with JumpDrive and select the eMMC.
== Serial console ==
The PineTab has a serial port in the headphone connector, it's activated by a switch behind the SD card cover. If the switch is pointed toward the SD card the headphone connector is in audio mode, if it's pointed the other way it's in UART mode.
The uart is 115200n8
The pinout for the serial connector on the tablet side is:
* Tip: RX
* Ring: TX
* Sleeve: GND
The serial connection is 3.3V
You can also buy the debug cable from PINE64 Store.
== Components ==
Component 	Model 	Driver
Touchscreen 	Goodix GT9271 	TOUCHSCREEN_GOODIX
Rear camera 	OmniVision OV5640 	VIDEO_OV5640
Front camera 	GalaxyCore GC2145 	Nope
LCD 	Feixin K101 IM2BA02 	DRM_PANEL_FEIXIN_K101_IM2BA02
WiFi 	Realtek RTL8723CS 	RTL8723CS
Bluetooth 	Realtek RTL8723CS 	BT_HCIUART_RTL
Accelerometer 	Bosch BMA223 	BMC150_ACCEL_I2C
Volume buttons 	Buttons connected to the KEYADC	KEYBOARD_SUN4I_LRADC
Power button 	X-Powers AXP803 	INPUT_AXP20X_PEK
Battery fuel gauge	X-Powers AXP803 	BATTERY_AXP20X
=== Touchscreen ===
The touchscreen on the PineTab is controlled by goodix module on i2c-0, at address 0x5d.
=== Cameras ===
Both front and back camera shares the same csi-0 bus. Currently only the back camera (OV5640) has mainline support.
It's not clear what would it reacts to both front and back camera. More information needed on this.
Since Cerdus is at /dev/video0, the CSI is at /dev/video1 and can be controlled with /dev/media1 using media-ctl
pine-pinetab:~# media-ctl --set-v4l2 '"ov5640 2-003c":0[fmt:UYVY8_2X8/1280x720]' -d /dev/media1
pine-pinetab:~# ffmpeg -s 1280x720 -f video4linux2 -i /dev/video1 -vframes 1 selfie.jpg
=== Wi-Fi ===
Wi-Fi works using the RTL8723CS driver from Icenowy, loads and connect to a Wi-Fi perfectly fine. However power saving capabilities aren't working, so the PineTab battery will drain more quicker.
=== Bluetooth ===
Bluetooth also works on this device after installing firmware-rtl8723bt, there is a patch series on LKML.
=== Accelerometer ===
The accelerometer driver is for BMA250 on mainline, and works just fine. The accelerometer value could be get here:
pine-pinetab:~$ cat /sys/bus/iio/devices/iio\:device1/name 
BMA222E
pine-pinetab:~$ cat /sys/bus/iio/devices/iio\:device1/in_accel_x_raw 
-1
pine-pinetab:~$ cat /sys/bus/iio/devices/iio\:device1/in_accel_y_raw 
28
pine-pinetab:~$ cat /sys/bus/iio/devices/iio\:device1/in_accel_z_raw 
-12
=== Audio ===
==== Speakers ====
Sound output should work after unmuting AIF1 Slot 0 digital and DAC. However Danct12's unit had it's speakers broken so this hasn't tested on him, but confirmed working on others.
The Speaker output is named "Line Out"
==== Headphone Jack ====
Thankfully our device still has the headphone jack, so you could still listen to "The Beatles", right?
Well, sure. Headphones should work after unmuting Headphone and AIF1 Slot 0 digital.
==== Microphone ====
Microphone can be enabled by toggle capture and unmute "AIF1 Data Digital Audio", "Mic1", "Mic2".
The microphone can be found here:
=== RAM ===
==== Changing the Clock Frequency ====
See the PinePhone article.
== See also ==
* Initial merge request
* https://lore.kernel.org/lkml/20200110155225.1051749-1-icenowy@aosc.io/ Mainline Linux support MR
* PinePhone U-Boot Upgrade