device-xiaomi-rolex: new device (take 2)
Xiaomi Redmi 4A (rolex) is a Snapdragon 425 (MSM8917) 5" 2/16 smartphone released in 2016.
Has LineageOS (unofficial) ported on it. Has Treble ARM64 A-only support.
Merge request reports
Activity
added 1 commit
- f16365f1 - xiaomi-rolex: Linting fixes; is a handset
By Denis Tolstov on 2021-01-31T14:38:24
added 1 commit
- 19f54ca9 - xiaomi-rolex: Moved firmware/ to device/testing/
By Denis Tolstov on 2021-01-31T14:42:09
I think it wants gcc6-aarch64 to build the kernel but
ccache: error: Could not find compiler "aarch64-alpine-linux-musl-gcc" in PATH
(000224) [14:49:28] ERROR: Command failed: (buildroot_aarch64) % cd /home/pmos/build; busybox su pmos -c CARCH=aarch64 SUDO_APK='abuild-apk --no-progress' PATH=/native/usr/lib/crossdirect/aarch64:/usr/lib/ccache/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin HOME=/home/pmos abuild -D postmarketOS -r -f
I have little idea how to lint and build locally without using Gitlab CI resources. Found
pmbootstrap lint
today.Trying to
pmbootstrap install --android-recovery-zip
now on my Gentoo laptop.UPD: yeah, it fails locally. Maybe I should disable ccache?
By Denis Tolstov on 2021-01-31T15:38:41
added category::device + 1 deleted label
added 1 commit
- 2aca5ee9 - xiaomi-rolex: Enable pmb:cross-native for kernel compilation
By Denis Tolstov on 2021-01-31T18:48:01
added 1 commit
- fed922bf - xiaomi-rolex: Apply YYLOC patch to build 3.18.140 with gcc-10 (-fno-common)
By Denis Tolstov on 2021-01-31T20:16:35
added 1 commit
- 7990d5a9 - xiaomi-rolex: update patch checksums in kernel APKBUILD
By Denis Tolstov on 2021-01-31T20:30:10
- Resolved by Administrator
Good news is I succesfully compiled an image with pmOS edge aarch64 for
rolex
with 3.18.140 kernel. I happened to find the YYLOC patch which I copied from
santoni
. However, now I guess I should symlink it rather than copy the actual file for future maintenance updates etc.I'm not very used to updating the APKBUILD checksums on every commit. Maybe there is a linter hook? There was one when I was developing in Alpine's aports.
Even better news is I remembered that the same Nick89786 released unofficial LineageOS-17.1
with 4.9.240 kernel. After slight Kconfig editing that one successfully compiled as well. Time will tell which one is better for pmOS/Alpine. I liked 4.9 more than 3.18 when running LOS.
The following patch changes kernel commit URI and the kconfig. rolex-upgrade-3.18.140-4.9.240-pmos.patch
By Denis Tolstov on 2021-02-01T06:19:13
Edited by Ghost User
added 1 commit
- e5aeb6a3 - xiaomi-rolex: update deviceinfo checksum; replace common patch with a symlink
By Denis Tolstov on 2021-01-31T21:35:30
- Resolved by Administrator
- Resolved by Administrator
- Resolved by Administrator
@minlexx I tried 4.9.240 kernel with minimally tweaked config (to satisfy
pmbootstrap kconfig check
) and it isn't much better.Framebuffer only works with Weston
fbdev-backend.so
, Xorg doesn't start due toFBDEV(0): FBIOPUT_VSCREENINFO: Invalid argument
, neither does Wayland of Plasma Mobile.Maybe @danct12 can enlighten us as to what patches should be applied to downstream Rolex kernels regarding framebuffer support? I think I've seen red and blue swapped in pixelformat on my smartphone display. BTW,
echo 0 | sudo tee /sys/.../mdss-fb/brightness
turns off backlight entirely -- I'd like to set up a hook for the power button to turn off the display. As of now, when Weston times out, display continues to glow with a black framebuffer.Can I simply enable CONFIG_DRM and DEs would suddenly work? A kernel
-j4
build takes 15min on my Ryzen 3 3200G, but almost 60min on Gitlab Runner pipelines. I wonder how they didn't time out.All in all, I'm not exactly satisfied with this port yet.
What works: Wi-Fi 802.11bgn, USB RNDIS, perhaps USB OTG, online charging (duh), touchscreen from Goodix, GPIO keys (libinput).
What doesn't work: audio (there are output devices but no sound), cellular modem (waiting for ofono/modemmanager support), Bluetooth (no hci0/phy device), GPS (untested), 2D and 3D graphic acceleration (no DRM), offline charging GUI (sdl crashes).
By Denis Tolstov on 2021-02-07T10:12:17
Edited by Ghost User
Maybe https://gitlab.com/postmarketOS/pmaports/-/blob/master/device/testing/linux-xiaomi-dior/0001-framebuffer-fixes.patch will give you some idea ?
x11-backend expect the following functions are filled :
+ .fb_fillrect = mdss_fb_fillrect, + .fb_copyarea = mdss_fb_copyarea, + .fb_imageblit = mdss_fb_imageblit, + + .fb_setcolreg = mdss_fb_setcolreg,
And the order of color offset is correct
- var->blue.offset = 0; - var->green.offset = 8; - var->red.offset = 16; + var->blue.offset = 24; + var->green.offset = 16; + var->red.offset = 8;
By Edwin Cheng on 2021-03-04T21:49:32
Sorry to bother you @ALTracer,
but we've detected that this merge request hasn't seen any recent activity. If you need help or want to discuss your approach with developers you can ping
@postmarketOS
. You can also ask on matrix in #devel:postmarketos.org or #postmarketos-devel on OFTC. If no further activity occurs in this MR, postmarketOS developers may close it in the future.Thanks for your contribution.
By * postmarketOS Bot on 2021-08-01T09:49:56
mentioned in issue #1203 (closed)
By Newbyte on 2021-08-25T14:00:05
added 1123 commits
-
946adc4d...2c9a4920 - 1109 commits from branch
postmarketOS:master
- 66559dda - new file: device/testing/device-xiaomi-rolex/APKBUILD
- 45b438fd - Changed deviceinfo : Width x Height was 800x600 to correct dimension -> 720x1280
- 5af5307b - Added directfbrc and fb.modes file. Also added SWAP file support swap_size=1024
- e8c65408 - Added Audio files and rules removed uneccessary lines in deviceinfo.
- 7dc0b225 - device/xiaomi-rolex: Fix linting issues
- 106931c4 - xiaomi-rolex: Linting fixes; is a handset
- e392acc4 - xiaomi-rolex: Moved firmware/ to device/testing/
- 08fddff9 - xiaomi-rolex: Enable pmb:cross-native for kernel compilation
- 30526ef8 - xiaomi-rolex: Apply YYLOC patch to build 3.18.140 with gcc-10 (-fno-common)
- d9cf5995 - xiaomi-rolex: update patch checksums in kernel APKBUILD
- ea7260cb - xiaomi-rolex: update deviceinfo checksum; replace common patch with a symlink
- e2f0eca0 - xiaomi-rolex: use mdss patch
- ad79419a - xiaomi-rolex: switch kernel from kgsl to drm, use more framebuffer patches
- cb3c602d - xiaomi-rolex: mark myself as maintainer
By Denis Tolstov on 2021-10-31T21:02:42
Toggle commit list-
946adc4d...2c9a4920 - 1109 commits from branch