Skip to content
Snippets Groups Projects

chuwi-hi10plus: initial device support

Merged Imported Administrator requested to merge hi10plus into master
All threads resolved!

I don't know why but I recently started to do quite some postmarketOS work, now we have another device in the house!

Anyway, this port uses the Android bootloader (kernelflinger) instead of Gummiboot or rEFInd,... just in case if people still wants to easily reflash Android later without going through some DNX Fastboot, Intel Flash Tool blah blah.

More information on this port:

  • Chuwi violates GPLv2 by not releasing the kernel sources of Android to the public. And they still does.
  • This port uses Linux mainline (5.1-rc7), and almost everything works properly, so thankfully we don't have to use the 3.10 kernel which is outdated and EOL.

Progress:

What works:

  • Kernel
  • USB networking
  • Rootfs
  • Wi-Fi
  • Bluetooth (not tested, but firmware loads without errors)
  • Sound (using PulseAudio)
  • Touch (gslx680-ts-acpi)
  • 3D Acceleration & Video Decoding
  • Both USB ports

What doesn't work:

  • Sensors
  • SD Card Slot (Sometimes, most of the time it's unreliable)

(anything that isn't mentioned isn't working or not tested)

Edited by Administrator

Merge request reports

Approved by

Merged by AdministratorAdministrator 5 years ago (May 19, 2019 7:48pm UTC)

Merge details

  • Changes merged into master with 94d5efbc.
  • Deleted the source branch.

Pipeline #192265 passed

Pipeline passed for 94d5efbc on master

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Administrator added 1 commit · Imported

    added 1 commit

    • 7db78c73 - chuwi-hi10plus: kernel boots and telnet

    Compare with previous version

    By Danct12 on 2019-05-06T16:21:52

    • Author Owner
      Resolved by Administrator

      This port uses Linux mainline (5.1-rc7), and almost everything works properly, so thankfully we don't have to use the 3.10 kernel which is outdated and EOL

      Awesome! What exactly works though? ;)

      By Bart Ribbers on 2019-05-08T16:58:06

      Edited by Ghost User
  • Administrator changed the description · Imported

    changed the description

    By Danct12 on 2019-05-08T17:02:20

  • Administrator changed the description · Imported

    changed the description

    By Danct12 on 2019-05-09T17:12:04

  • Administrator changed the description · Imported

    changed the description

    By Danct12 on 2019-05-10T03:55:28

  • Administrator changed the description · Imported

    changed the description

    By Danct12 on 2019-05-13T17:05:55

  • Administrator added 19 commits · Imported

    added 19 commits

    Compare with previous version

    By Danct12 on 2019-05-13T17:06:19

  • Author Owner

    The tablet finally booted to Weston :tada:

    One problem is that how are we going to bundle gslx680-ts-acpi driver? I cannot get the silead driver to work, not sure why, but the gslx680-ts-acpi driver works fine on Arch Linux.

    Since Alpine Linux doesn't have dkms, we might need a better way to implement the driver.

    By Danct12 on 2019-05-13T17:10:03

  • Administrator mentioned in issue #256 · Imported

    mentioned in issue #256

    By Danct12 on 2019-05-13T17:31:17

  • Administrator added 1 commit · Imported

    added 1 commit

    Compare with previous version

    By Danct12 on 2019-05-13T17:35:45

  • Author Owner

    I have no idea why, but GitLab CI refuses to build it due to checksum error, I've checked the checksum on my hos computer, even tried to clean the distfiles from pmbootstrap, checksum but all were passed.

    Anyone have any idea why this happened?

    By Danct12 on 2019-05-13T17:51:05

  • Administrator unmarked as a Work In Progress · Imported

    unmarked as a Work In Progress

    By Danct12 on 2019-05-14T01:02:47

  • Administrator added 2 commits · Imported

    added 2 commits

    • d5869bcd - linux-chuwi-hi10plus-mainline: remove hi10plus platform data
    • ee80582f - chuwi-hi10plus: device boots & added touch screen driver and device firmwares.

    Compare with previous version

    By Danct12 on 2019-05-14T16:56:56

  • Author Owner

    EDIT: for the gslx680-acpi packaging discussion, see #256.


    The tablet finally booted to Weston :tada:

    Awesome!

    One problem is that how are we going to bundle gslx680-ts-acpi driver? I cannot get the silead driver to work, not sure why, but the gslx680-ts-acpi driver works fine on Arch Linux.

    I wish we had DKMS in Alpine. Maybe that is feasible for you to port?

    For wireguard we had used a hack: https://wiki.postmarketos.org/wiki/Out-of-tree_kernel_modules

    Another method I can think of, is somehow building the module in-tree together with your device-specific linux package. But that is also not so great, having DKMS would be the best solution imho.

    Regarding the checksums, it seems to be caching on your PC (from what we found out in the chat). Please add another comment, when this is solved and CI passes :)

    Thank you very much for your porting efforts @danct12 \o/

    By Oliver Smith on 2019-05-14T18:44:43

    Edited by Administrator
  • Author Owner

    (Please update that wiki article if you find out more, or try to port DKMS!)

    By Oliver Smith on 2019-05-14T17:36:40

  • Administrator
  • Administrator
  • Administrator
  • Administrator
  • Administrator added 1 commit · Imported

    added 1 commit

    • 46dceac1 - linux-chuwi-hi10plus: remade the script using devicepkg-dev

    Compare with previous version

    By Danct12 on 2019-05-16T05:20:00

  • Administrator added 1 commit · Imported

    added 1 commit

    • ed7089bf - chuwi-hi10plus: use devicepkg-dev, made changes as ollieparanoid

    Compare with previous version

    By Danct12 on 2019-05-16T05:23:26

  • Administrator added 1 commit · Imported

    added 1 commit

    • 8aa99f4b - chuwi-hi10plus: use devicepkg-dev, made changes as ollieparanoid requested.

    Compare with previous version

    By Danct12 on 2019-05-16T11:41:28

  • Administrator added 9 commits · Imported

    added 9 commits

    • 8aa99f4b...aff352d9 - 5 commits from branch postmarketOS:master
    • 0d46d05b - chuwi-hi10plus: new device
    • 3c176771 - linux-chuwi-hi10plus-mainline: remove hi10plus platform data
    • 0570ea2e - chuwi-hi10plus: device boots & added touch screen driver and device firmwares.
    • 5b4446dc - chuwi-hi10plus: use devicepkg-dev, made changes as ollieparanoid requested.

    Compare with previous version

    By Danct12 on 2019-05-16T13:28:59

  • Administrator changed the description · Imported

    changed the description

    By Danct12 on 2019-05-16T17:34:17

  • Administrator added 1 commit · Imported

    added 1 commit

    • e22967ee - device-chuwi-hi10plus: added vaapi support

    Compare with previous version

    By Danct12 on 2019-05-16T18:31:21

  • Administrator
  • Administrator
  • Administrator
  • Administrator added 1 commit · Imported

    added 1 commit

    • 8f519a6f - chuwi-hi10plus: added touch screen support to initram for FDE.

    Compare with previous version

    By Danct12 on 2019-05-17T18:23:04

  • Administrator added 1 commit · Imported

    added 1 commit

    • d66b9da6 - chuwi-hi10plus: added touch screen support to initram for FDE.

    Compare with previous version

    By Danct12 on 2019-05-17T18:25:40

  • Administrator added 1 commit · Imported

    added 1 commit

    • 3394e1d9 - chuwi-hi10plus: added touch screen support to initram for FDE.

    Compare with previous version

    By Danct12 on 2019-05-17T18:30:12

  • Author Owner

    I added support for FDE and Battery, however there's a problem:

    FDE

    • Doesn't work, usually there'll be a UI for entering the password, but that one doesn't show up, and instead gives a message that root cannot be mounted.
    • I can still unlock the rootfs in debug-shell through cryptsetup!
    • osk-sdl works fine in rootfs while I was testing, and also works while in debug-shell

    Battery (charging-sdl)

    • Works, it even shows the charging indicator for a few seconds before boots straight to the rootfs for some weird reason, even though it's booted in the charging parameters (power off the system, then plug in the charger).

    (Sidenote: The device doesn't need fb.modes and directfbrc to exist in order to start osk-sdl. This can be proven by charging-sdl shows up in initram.)

    By Danct12 on 2019-05-17T18:45:19

    Edited by Administrator
  • Administrator added 9 commits · Imported

    added 9 commits

    • 3394e1d9...e927feb4 - 3 commits from branch postmarketOS:master
    • 41f25119 - chuwi-hi10plus: new device
    • b06d2af4 - linux-chuwi-hi10plus-mainline: remove hi10plus platform data
    • 1b39ce68 - chuwi-hi10plus: device boots & added touch screen driver and device firmwares.
    • d8f4b6d2 - chuwi-hi10plus: use devicepkg-dev, made changes as ollieparanoid requested.
    • 294f812a - device-chuwi-hi10plus: added vaapi support
    • 0fa82621 - chuwi-hi10plus: added touch screen support to initram for FDE.

    Compare with previous version

    By Danct12 on 2019-05-18T03:02:54

  • Author Owner

    No idea how to fix the osk-sdl and charging-sdl issues right now, except for poking at the source.

    You did some amazing work with this port, @danct12! :tada: Let's merge this as is, and do future improvement as follow up MRs. I'm building this locally, and then merging it. (So the patch size in future MRs is smaller.)

    EDIT: code LGTM.

    By Oliver Smith on 2019-05-19T15:37:20

    Edited by Administrator
  • Author Owner

    Wow, this took four hours to build on my laptop with an i7. (Maybe you can disable some of the stuff that is not needed for sure?)

    But everything runs through fine, let's ship this.

    By Oliver Smith on 2019-05-19T19:25:32

  • Administrator added 4 commits · Imported

    added 4 commits

    Compare with previous version

    By Oliver Smith on 2019-05-19T19:35:23

  • Administrator approved this merge request · Imported

    approved this merge request

    By Oliver Smith on 2019-05-19T19:36:30

  • Administrator resolved all discussions · Imported

    resolved all discussions

    By Oliver Smith on 2019-05-19T19:36:36

  • Administrator resolved all discussions · Imported

    resolved all discussions

    By Oliver Smith on 2019-05-19T19:42:28

  • Administrator added 1 commit · Imported

    added 1 commit

    Compare with previous version

    By Oliver Smith on 2019-05-19T19:46:42

  • Administrator approved this merge request · Imported

    approved this merge request

    By Oliver Smith on 2019-05-19T19:47:15

  • Administrator enabled an automatic merge when the pipeline for 94d5efbc succeeds · Imported

    enabled an automatic merge when the pipeline for 94d5efbc succeeds

    By Oliver Smith on 2019-05-19T19:47:17

  • Administrator merged · Imported

    merged

    By Oliver Smith on 2019-05-19T19:48:16

  • Administrator mentioned in commit 94d5efbc · Imported

    mentioned in commit 94d5efbc

    By Danct12 on 2019-06-05T11:55:58

  • Please register or sign in to reply
    Loading