Jump to content

WEXLER Tab 7t (wexler-qc750): Difference between revisions

From postmarketOS Wiki
Or not gave up... Tested 6.6.22 kernel
 
(36 intermediate revisions by 6 users not shown)
Line 3: Line 3:
| name = Tab 7t
| name = Tab 7t
| codename = wexler-qc750
| codename = wexler-qc750
| image = File:PSX_20201118_083122.jpg
| image = File:PXL_20230710_231202953.jpg
| imagecaption = Booted tablet, with weston
| imagecaption = Booted tablet with lxqt
| releaseyear = 2012
| releaseyear = 2012
| originalsoftware = Android 4.2.2
| category = testing
| chipset = NVIDIA Tegra 3
| originalsoftware = Android
| cpu = NVIDIA T30L Quad-core Cortex-A9 1.3 ГГц
| originalversion = 4.2.2
| pmoskernel = downstream 3.1.10, mainline 6.6.22
| chipset = Nvidia Tegra 3 (T30L)
| cpu = Quad-core 1.3 GHz Cortex-A9
| gpu = NVIDIA ULP GeForce GPU 12 cores
| gpu = NVIDIA ULP GeForce GPU 12 cores
| storage = eMMC 8 GB
| display = 1280x800 IPS LCD
| display = 1280x800 IPS
| storage = 8, 16, 32 GB
| memory = 1024 MB DDR3L
| memory = 1 GB DDR3L
| architecture = armv7
| architecture = armv7
<!-- the following status_* questions should be answered with Y - yes, P - partial, N - no, or left blank (for untested or unknown) -->
| type = tablet
| status_flashing = Y
| whet_dhry = 1161.4 <!-- see Unixbench page on wiki -->
| status_usbnet = Y
| genericdevice=Nvidia Tegra armv7 (nvidia-tegra-armv7)
| status_touch = Y
<!-- Features -->
| status_screen = Y
<!-- the following status_* questions should be answered with Y for yes, P for partial, N for no, - for N/A or unavailable, or left blank for untested or unknown -->
| status_wifi =  
| status_usbnet = Y <!-- USB networking does work? then put Y here and delete this comment -->
| status_xwayland =  
| status_flashing = Y <!-- Flashing with "pmbootstrap flasher" works? Put Y here. It works the same for everything coming below. -->
| status_fde =  
| status_touch = Y <!-- Touch screen is working? You can also answer these questions with P for partially. -->
| status_mainline =  
| status_screen = Y <!-- The display is working? -->
| status_battery =  
| status_wifi = <!-- Wireless network works? -->
| status_3d =  
| status_xwayland = <!-- Showing X11 applications in a Wayland compositor (Weston, KWin, ...) works? -->
| status_accel =
| status_fde = <!-- When installing with full disk encryption, can you type in the password with the on screen keyboard? -->
| status_audio =  
| status_mainline = Y <!-- Instead of a Linux kernel fork, it is possible to run mainline. -->
| status_bluetooth =  
| status_battery = <!-- Charging the battery with charging-sdl is possible -->
| status_camera =  
| status_3d = <!-- Hardware accelerated 3D graphics (e.g. with freedreno) -->
| status_gps =  
| status_audio = <!-- Using the device's speakers/headphone jack works -->
| status_mobiledata =  
| status_bluetooth = <!-- It's possible to pair and use other devices via the bluetooth protocol -->
| status_sms =  
| status_camera = <!-- Taking photos and videos works. -->
| status_calls =  
| status_gps = <!-- The Global Positioning System sensor works.  -->
| status = Kernel compiles, device boots, testing capabilities
| status_mobiledata = <!-- Connecting to the Internet via cellular network. -->
| booting = yes
| status_sms = <!-- Sending and receiving short messages works as intended. -->
| pmoskernel = 3.1.10
| status_calls = <!-- Talking to other people over the cellular network. -->
| status_otg = Y <!-- USB-OTG adapters work, e.g. to connect an USB flash drive to the device -->
| status_nfc =  <!-- Near-Field Communication (NFC) works -->
<!-- Sensors -->
| status_accel =  <!-- The sensor that measures proper acceleration works -->
| status_magnet =  <!-- Magnetometer works -->
| status_light =  <!-- Ambient light sensor works -->
| status_proximity =  <!-- Proximity sensor works -->
| status_hall =  <!-- Hall effect sensor works -->
| status_barometer =  <!-- Barometer works -->
| status_powersensor =  <!-- Power sensor works -->
<!-- Misc -->
| status_cameraflash = - <!-- Camera flash/torch works -->
| status_keyboard = - <!-- Keyboard works (Mark "-" if device doesn't have a keyboard) -->
| status_touchpad = - <!-- Touchpad works (Usually applicable to laptops) -->
| status_usba = Y <!-- Full-sized USB-A port works (Usually applicable to SBCs and laptops) -->
| status_hdmidp =  <!-- Video and audio output with HDMI or DisplayPort works -->
| status_irtx = - <!-- Infrared (IR) transmit works -->
| status_irrx = - <!-- Infrared (IR) receive works -->
| status_stylus = - <!--  -->
| status_haptics = - <!--  -->
| status_ethernet = - <!--  -->
| status_fossbootloader = Y <!-- Device has a free and open source bootloader -->
 
| status_uboot = Y
| status_uboot_primary = Y
| status_uboot_secondary = N
| status_uboot_mainline = Y
| status_uboot_internalstorage = Y
| status_uboot_sd = Y
| status_uboot_usbhost = Y
| status_uboot_usbperipheral = Y
| status_uboot_screen = Y
| status_uboot_keyboard = -
| status_uboot_buttons = Y
 
| booting = yes <!-- The device is booting at all, can be yes/no *IMPORTANT* -->
| status = Kernel compiles, device boots, testing capabilities <!-- Text displayed in the "not booting" table on the Devices page , e.g "kernel compiles, doesn't boot" -->
}}
}}


== Notes ==
== Notes ==
* Device SoC should be similar to SoC in [[Google_Nexus_7_2012_(asus-grouper)|Google Nexus 7 2012]] and [[Google_Nexus_7_2012_GSM_(asus-tilapia)|Google Nexus 7 2012 GSM]]
* Device SoC is similar to SoC in [[Google_Nexus_7_2012_(asus-grouper)|Google Nexus 7 2012]] and [[Google_Nexus_7_2012_GSM_(asus-tilapia)|Google Nexus 7 2012 GSM]]
* OTG available - partially (full USB port, working only when device connected before booting)
* OTG available - full support, connect and disconnect, at least USB keyboard-mouse and USB drives <s><span style="color:#777777">partially (full USB port, working only when device connected before booting)</span></s>
* Battery charges (at least not discharges while OS work). Somehow reports status only in xfce4.
* Device have 3G modem (not working?)
* Device have 3G modem (not working?)
* MiniHDMI port available (not working?)
* MiniHDMI port available (not working?)
* I accidentally broke my touchscreen connector on the motherboard, so I'm working with wireless USB keyboard-mouse now
== Tested environments ==
* xfce4: works better than other environments, but still have some issues
* lxqt: works fine, can't manage to reboot or power off in UI, doing through terminal
* console: works with connected wireless USB keyboard-mouse
* fbkeyboard: works, can't test touchscreen
Any other UIs is not working, or I can't get them to work for now.
== How to enter flash mode ==
'''fastboot''': Press {{button|Volume Up}} + {{button|Power}} keys, with {{button|Volume Down}} move selection to <code>Fastboot Protocol</code>, then choose it by pressing {{button|Volume Up}}.
'''APX''': Press {{button|Volume Up}} + {{button|Power}} keys, with {{button|Volume Down}} move selection to <code>Forced Recovery</code>, then choose it by pressing {{button|Volume Up}}.
== Mainline status ==
{{note|This part is in development.}}
Tablet boots mainline kernel 6.6.22 https://gitlab.com/grate-driver/linux, adaptation is going on in forked tree https://gitlab.com/DX37/linux/-/tree/wexler-qc750
{|class="wikitable feature-colors"
! Status
! Hardware
! Info
|-
| P
| Booting
| Mainline kernel boots with U-Boot, so it needs to be placed in pmOS_boot partition on microSD card. Can be in theory loaded from eMMC boot partition, but grate kernel is bigger, than old downstream kernel, and surpasses 8 Mb partition size. Needs testing.
|-
| P
| Bootloader
| Open source bootloader [https://gitlab.com/clamor-s/u-boot U-Boot] is available as alternative for vendor bootloader and can replace it, but starts only sometimes. <!-- U-Boot can not boot downstream kernel if it has Trusted Foundations enabled. -->
|-
| Y
| Panel
| Chunghwa CLAA070WP03XG LVDS simple panel.
|-
| Y
| Backlight
| Simple pwm-backlight GPIO backlight. Working and even manageable in xfce4.
|-
| P
| miniHDMI output
| Maximum output is 1920x1080. Needs manual detection by opening Display settings (in xfce4). No audio.
|-
| ?
| Touchscreen
| Novatek NT11003 with nt1103-ts driver. Worked in downstream kernel, but can't test it in mainline since I broke touchscreen connector on the motherboard.
|-
| Y
| microUSB & Full size USB
| Works. USB storage and USB peripherals are working (using USB keyboard-mouse kit instead of touchscreen).
|-
| Y
| Internal memory
| eMMC 8 Gb, but can be 16 or even 32 Gb.
|-
| ?
| GPS
| Not tested yet.
|-
| ?
| WiFi
| Not tested yet, possibly wl12xx driver.
|-
| ?
| Bluetooth
| SD8787? Not tested yet.
|-
| P
| GPIO keys
| There is 3 keys on GPIO: Power, Volume up, Volume down. Power key responding only to holding for force poweroff.
|-
| ?
| GPIO led
| There's only one GPIO led for charging state. Not tested yet, possibly works only on low-level hardware.
|-
| Y
| Battery
| TI BQ27500, works.
|-
| ?
| Charger
| TI BQ24160, not tested yet.
|-
| Y
| PMIC
| Maxim MAX77663 PMIC.
|-
| P
| Sound
| TI TLV320AIC3206, headphones and speakers sound is working, can't test microphone (guess still need UCM for that and speakers/headphones switching).
|-
| ?
| Thermal sensor
| NCT1008 ON Semiconductor, not tested yet.
|-
| P
| Orientation sensors
| Magnetometer Asahi-Kasei AK8975 and accelerometer Kionix KXTF9 seems to be working. Gyroscope Invensense MPU3050 does not.
|-
| ?
| Light sensor
| ISL29018? ISL29028? Not tested yet.
|-
| ?
| Front camera
| GC0308, not tested yet.
|-
| ?
| Rear camera
| T8EV5, not tested yet.
|-
| ?
| Modem
| usi_3g? Not tested yet.
|-
| P
| Graphics support
| 2D acceleration works with xf86-video-opentegra ([[Nvidia_Tegra#GPU]]).
|-
|}
== U-Boot ==
{{note|This part is in development.}}
Current [https://gitlab.com/clamor-s/u-boot U-Boot] status (in development by [[User:Clamor|Clamor]]):
{|class="wikitable feature-colors"
! Status
! Feature
! Info
|-
| P
|Primary bootloader
|U-Boot can be loaded with patched nvflash (tegra30_debrick) through APX (Forced Recovery), but after flashing starting only sometimes.
Created bricksafe.img successfully restores vendor bootloader (and original ROM flash, of course).
|-
| ?
|Secondary bootloader
|U-Boot chainloading from both /boot and /recovery partitions not tested.
|-
| Y
|Panel
|LVDS simple panel works.
|-
| Y
|MicroSD
|Fully functional and detectable. Can be used as boot source. Can be mounted from U-Boot.
|-
| Y
|eMMC
|Fully functional and detectable. Can be used as boot source. Can be mounted from U-Boot.
|-
| Y
|Boot kernel
|Yes, and can be highly adjusted with extlinux.conf.
|-
| ?
|Boot menu
|Not tested. <!-- Native u-boot bootmenu works perfectly fine. It can be called with pressing volume down button on boot. -->
|-
| ?
|Power management
|Not tested. <!-- Offline charging and charging in u-boot both work and are hw configured. Both power off and reboot options work and are available in bootmenu. If no valid kernel is found or lid-sensor is active (docked and closed) tablet will turn off. -->
|-
| P
|Fastboot
|Not fully tested. <!-- Fastboot option is available in bootmenu. All functions operate correctly. -->
|-
| ?
|Bricksafe hook (legacy)
|Not tested. <!-- U-Boot can successfully generate and restore device specific image of first 3 encrypted partitions. It is identical to one, generated with nvflash command. If you can not perform nvflash, use fusée gelée to launch u-boot from RAM and generate bricksafe. You need to insert blank fat microSD so it can be saved! -->
|-
| ?
|Boot Android
|Not tested and possibly not working. <!-- Booting Android kernel can be performed only same way mainline kernel boots. Additionally it must not have CONFIG_TRUSTED_FOUNDATIONS = y and some additional small patches, it can be booted by u-boot. -->
|-
| ?
|Self update
|Not tested. <!-- Self update option is implemented and write is done correctly. Re-crypt is required to be able to self update. Bootloader file has to have name '''u-boot-dtb-tegra.bin''' and be placed on 1st partition of microSD. -->
|-
|}


== Contributors ==
== Contributors ==
* [[user:DragonX256|DragonX256]]
* [[user:DragonX256|DragonX256]]
* [[User:Clamor|Clamor]]


== Maintainer(s) ==
== Maintainer(s) ==
Line 52: Line 273:
== Users owning this device ==
== Users owning this device ==
{{Device owners}}
{{Device owners}}
== Tested environments ==
* weston: works
* xfce4: works fine with <code>matchbox-keyboard</code>, can't manage to reboot or power off, doing through terminal
== How to enter flash mode ==
Press {{button|Volume Up}} + {{button|Power}} keys, with {{button|Volume Down}} move selection to <code>Fastboot Protocol</code>, then choose it by pressing {{button|Volume Up}}.
== Installation ==
* <code>pmbootstrap init</code> with vendor '''wexler''' and codename '''qc750'''
* <code>pmbootstrap install</code>
* <code>pmbootstrap flasher flash_kernel</code>
* <code>pmbootstrap flasher flash_rootfs</code>
It's possible to flash to ''userdata'', but fastboot limit size of images is still to figure out (possibly 800 MB).
* <code>pmbootstrap flasher flash_rootfs --partition userdata</code>
* <code>fastboot format system</code>


== See also ==
== See also ==
Line 75: Line 278:
* Using this old 3.1.10 kernel, built with '''gcc6''': https://github.com/DmitryADP/morpheus_kernel_wexler_qc750
* Using this old 3.1.10 kernel, built with '''gcc6''': https://github.com/DmitryADP/morpheus_kernel_wexler_qc750
* [https://github.com/DmitryADP/device_qc750 Device related build files]
* [https://github.com/DmitryADP/device_qc750 Device related build files]
* [https://github.com/DmitryADP/diff_qc750 Possibly full device related source files]
* [https://github.com/clamor-s/diff_qc750 Possibly full device related source files]
* [https://www.reddit.com/r/postmarketOS/comments/jwld44/ported_pmos_to_tegra_3_tablet_wexler_tab_7t_3g Some nice photos on Reddit]
* [https://www.reddit.com/r/postmarketOS/comments/jwld44 Some nice photos on Reddit]
* [https://www.reddit.com/r/postmarketOS/comments/jyw5mw Photos on Reddit about getting UART debug ready]
* {{MR|1742|pmaports}} Initial merge request
* {{MR|1742|pmaports}} Initial merge request
* {{Device package|wexler-qc750}}
* {{Device package|wexler-qc750}}
* {{Kernel package|wexler-qc750}}
* {{Kernel package|wexler-qc750}}

Latest revision as of 04:27, 7 December 2024

Note This device is supported as part of a generic port. Refer to Nvidia Tegra armv7 (nvidia-tegra-armv7) for installation instructions and more information.
WEXLER Tab 7t
Booted tablet with lxqt
Booted tablet with lxqt
Manufacturer WEXLER
Name Tab 7t
Codename wexler-qc750
Released 2012
Type tablet
Hardware
Chipset Nvidia Tegra 3 (T30L)
CPU Quad-core 1.3 GHz Cortex-A9
GPU NVIDIA ULP GeForce GPU 12 cores
Display 1280x800 IPS LCD
Storage 8, 16, 32 GB
Memory 1 GB DDR3L
Architecture armv7
Software
Original software Android
Original version 4.2.2
FOSS bootloader yes
postmarketOS
Category testing
Pre-built images no
Mainline yes
postmarketOS kernel downstream 3.1.10, mainline 6.6.22
Unixbench Whet/Dhry score 1161.4
Generic port Nvidia Tegra armv7 (nvidia-tegra-armv7)
Features
Flashing
Works
USB Networking
Works
Internal storage
No data
SD card
No data
Battery
No data
Screen
Works
Touchscreen
Works
Multimedia
3D Acceleration
No data
Audio
No data
Camera
No data
Connectivity
WiFi
No data
Bluetooth
No data
GPS
No data
NFC
No data
Modem
Calls
No data
SMS
No data
Mobile data
No data
Miscellaneous
FDE
No data
USB-A
Works
USB OTG
Works
HDMI/DP
No data
Sensors
Accelerometer
No data
Magnetometer
No data
Ambient Light
No data
Proximity
No data
Hall Effect
No data
Barometer
No data
Power Sensor
No data
U-Boot
Primary Bootloader
Works
Secondary Bootloader
Broken
Mainline
Works
Internal Storage
Works
SD card
Works
USB Host
Works
USB Peripheral
Works
Display
Works
Buttons
Works


Notes

  • Device SoC is similar to SoC in Google Nexus 7 2012 and Google Nexus 7 2012 GSM
  • OTG available - full support, connect and disconnect, at least USB keyboard-mouse and USB drives partially (full USB port, working only when device connected before booting)
  • Battery charges (at least not discharges while OS work). Somehow reports status only in xfce4.
  • Device have 3G modem (not working?)
  • MiniHDMI port available (not working?)
  • I accidentally broke my touchscreen connector on the motherboard, so I'm working with wireless USB keyboard-mouse now

Tested environments

  • xfce4: works better than other environments, but still have some issues
  • lxqt: works fine, can't manage to reboot or power off in UI, doing through terminal
  • console: works with connected wireless USB keyboard-mouse
  • fbkeyboard: works, can't test touchscreen

Any other UIs is not working, or I can't get them to work for now.

How to enter flash mode

fastboot: Press Volume Up + Power keys, with Volume Down move selection to Fastboot Protocol, then choose it by pressing Volume Up.

APX: Press Volume Up + Power keys, with Volume Down move selection to Forced Recovery, then choose it by pressing Volume Up.

Mainline status

Note This part is in development.

Tablet boots mainline kernel 6.6.22 https://gitlab.com/grate-driver/linux, adaptation is going on in forked tree https://gitlab.com/DX37/linux/-/tree/wexler-qc750

Status Hardware Info
P Booting Mainline kernel boots with U-Boot, so it needs to be placed in pmOS_boot partition on microSD card. Can be in theory loaded from eMMC boot partition, but grate kernel is bigger, than old downstream kernel, and surpasses 8 Mb partition size. Needs testing.
P Bootloader Open source bootloader U-Boot is available as alternative for vendor bootloader and can replace it, but starts only sometimes.
Y Panel Chunghwa CLAA070WP03XG LVDS simple panel.
Y Backlight Simple pwm-backlight GPIO backlight. Working and even manageable in xfce4.
P miniHDMI output Maximum output is 1920x1080. Needs manual detection by opening Display settings (in xfce4). No audio.
? Touchscreen Novatek NT11003 with nt1103-ts driver. Worked in downstream kernel, but can't test it in mainline since I broke touchscreen connector on the motherboard.
Y microUSB & Full size USB Works. USB storage and USB peripherals are working (using USB keyboard-mouse kit instead of touchscreen).
Y Internal memory eMMC 8 Gb, but can be 16 or even 32 Gb.
? GPS Not tested yet.
? WiFi Not tested yet, possibly wl12xx driver.
? Bluetooth SD8787? Not tested yet.
P GPIO keys There is 3 keys on GPIO: Power, Volume up, Volume down. Power key responding only to holding for force poweroff.
? GPIO led There's only one GPIO led for charging state. Not tested yet, possibly works only on low-level hardware.
Y Battery TI BQ27500, works.
? Charger TI BQ24160, not tested yet.
Y PMIC Maxim MAX77663 PMIC.
P Sound TI TLV320AIC3206, headphones and speakers sound is working, can't test microphone (guess still need UCM for that and speakers/headphones switching).
? Thermal sensor NCT1008 ON Semiconductor, not tested yet.
P Orientation sensors Magnetometer Asahi-Kasei AK8975 and accelerometer Kionix KXTF9 seems to be working. Gyroscope Invensense MPU3050 does not.
? Light sensor ISL29018? ISL29028? Not tested yet.
? Front camera GC0308, not tested yet.
? Rear camera T8EV5, not tested yet.
? Modem usi_3g? Not tested yet.
P Graphics support 2D acceleration works with xf86-video-opentegra (Nvidia_Tegra#GPU).

U-Boot

Note This part is in development.

Current U-Boot status (in development by Clamor):

Status Feature Info
P Primary bootloader U-Boot can be loaded with patched nvflash (tegra30_debrick) through APX (Forced Recovery), but after flashing starting only sometimes.

Created bricksafe.img successfully restores vendor bootloader (and original ROM flash, of course).

? Secondary bootloader U-Boot chainloading from both /boot and /recovery partitions not tested.
Y Panel LVDS simple panel works.
Y MicroSD Fully functional and detectable. Can be used as boot source. Can be mounted from U-Boot.
Y eMMC Fully functional and detectable. Can be used as boot source. Can be mounted from U-Boot.
Y Boot kernel Yes, and can be highly adjusted with extlinux.conf.
? Boot menu Not tested.
? Power management Not tested.
P Fastboot Not fully tested.
? Bricksafe hook (legacy) Not tested.
? Boot Android Not tested and possibly not working.
? Self update Not tested.

Contributors

Maintainer(s)

Users owning this device

  • DragonX256 (Notes: Tegra 3 tablet, close to mainline kernel)
  • Shipa (Notes: all clips are broken, a bit quirky)


See also