nyuuzyou/wikis huggingface dataset:
Huawei Honor 7 (huawei-aum)

__TOC__
== Contributors ==
* Frost_I7 (I'll try to keep the wiki page up-to-date with the available info when I'm active.)
== Users Owning This Device ==
== Information ==
Although it has only been tested with AUM-L41, technically, this should work with both AUM and LND models that have the MSM89*7 SoC.
== How to Enter Flash Mode ==
Hold the and buttons (while connected to the USB) to boot into fastboot.
== Installation ==
=== Hard Way Around ===
You need to separately flash initramfs as ramdisk and vmlinuz as kernel.
You can flash pmOS to either the system (ramdisk & kernel), the first recovery (recovery_ramdisk & kernel), or the second recovery (erecovery_ramdisk & erecovery_kernel).
Use mkbootimg.
Make the ramdisk image:
$ ./mkbootimg --kernel /dev/null --ramdisk /path/to/file/initramfs --base 0x80000000 --kernel_offset 0x00008000 --ramdisk_offset 0x02000000 --second_offset 0x00f00000 --tags_offset 0x00000100 --pagesize 2048 --header_version 0 -o /path/to/file/pmOS_RAMDISK.img
Make the kernel image:
$ ./mkbootimg --kernel /path/to/file/vmlinuz --ramdisk /dev/null --base 0x80000000 --kernel_offset 0x00008000 --ramdisk_offset 0x02000000 --second_offset 0x00f00000 --tags_offset 0x00000100 --pagesize 2048 --header_version 0 -o /path/to/file/pmOS_KERNEL.img
=== Using lk2nd ===
Install it following the standard procedure.
== Downstream ==
=== hwtest ===
$sudo hwtest
Category Model Path Status Value
framebuffer mdssfb_80000 /sys/class/graphics/fb0 working U:720x1440p-59
framebuffer mdssfb_a0000 /sys/class/graphics/fb1 working
input huawei,ts_kit /dev/input/event3 working
input gpio-keys /dev/input/event2 working
input fingerprint /dev/input/event1 working
input qpnp_pon /dev/input/event0 working
=== xrandr ===
$xrandr
Can't open display
=== Issues ===
* The touchscreen stops responding after ~5 minutes of inactivity.
* Unable to get the Wi-Fi to work.
=== Gallery ===
File:AUML41DSFSBA.png|First successful boot attempt with working display
== See also ==
* Downstream kernel with a few patches
Huawei Honor 7 (huawei-plank)

Not to be confused with Huawei Honor 7 (huawei-aum).
== Contributors ==
* gtrxAC
== Users owning this device ==
== How to enter flash mode ==
Hold + while connected to USB.
Alternatively you can run adb reboot bootloader.
== Installation ==
The phone's bootloader needs to be unlocked. See Bootloader#Huawei.
Use pmbootstrap to build your own installation image. Fastboot flashing didn't seem to work, so use a recovery ZIP. 
$ pmbootstrap init
$ pmbootstrap install --android-recovery-zip
Enter the bootloader by running adb reboot bootloader.
Flash TWRP (I recommend this one) using fastboot.
Boot the phone into TWRP by holding and .
Go into sideloading mode: -> and swipe to start sideload.
Run the flasher: pmbootstrap flasher --method=adb sideload
== What works ==
The device shows the splash, then the screen turns off. The only sign of life is the USB SSH connection. This was tested with fbkeyboard and xfce4.
Internet access does not work:
huawei-plank:~$ ip route add default via 172.16.42.2 dev usb0
ip: can't find device 'usb0'
== Kernel notes ==
* Stock kernel cannot be compiled due to missing object files (proprietary blobs?) so we are using a modified one called "Peak Kernel"
* ZRAM is disabled (this modified kernel has ZRAM disabled and trying to compile with it enabled causes an error)
* The downstream kernel also supports the Huawei P8, Huawei Mate S, Huawei Mediapad M2 and Huawei Mediapad X2, so porting to them should be a similar process.
== See also ==
* Initial merge request
* Kernel source
* 
*
Huawei Honor 8 (huawei-frd)

The Huawei Honor 8 has been updated to Android 8 in some regions, while others are stuck on Android 7.0.
Android 8 uses a different partition layout and kernel.
If you have a device that got the Android 8 update you might need to make a port based on the Android 8 kernel. Take a look at huawei-warsaw for information on dealing with the Android 8 partition layout.
== Contributors ==
* Sandelinos
== Maintainer(s) ==
* Sandelinos
== Users owning this device ==
== Unlocking the bootloader ==
Huawei has stopped providing unlock codes for their devices so you'll need to pay for a code from a 3rd party or use PotatoNV, which requires removing the back cover with a hairdryer. See Bootloader#Huawei. For whatever reason, the command fastboot boot <file.img> does not work after unlocking the bootloader with PotatoNV. ("Command not allowed")
== How to enter flash mode ==
With the device powered off, hold and plug in the USB.
== Installation ==
# Unlock the bootloader.
#* See Bootloader#Huawei
# Follow the Installation guide to flash rootfs.
# (optional) install TWRP
#* TWRP from twrp.me is only compatible with devices updated to Android 8.
#* Here is a TWRP compatible with Android 7.0 devices
## Flash TWRP to recovery partition
##* fastboot flash recovery twrp-3.1.1-1-frd.img
## Boot into TWRP and install twrp to boot partition (We'll overwrite recovery with postmarketOS kernel later)
# Flash the kernel to the recovery partition
#* The boot partition is just 32 MB, while the boot.img we get from pmbootstrap is ~35 MB.
#* If you unlocked your bootloader with PotatoNV fastboot won't be able to flash to the boot partition even if it fit.
#* pmbootstrap flasher flash_kernel --partition recovery
== Additional Info ==
Battery charging and level reporting works. charging-sdl is untested, since the postmarketOS kernel does not fit on the boot partition.
To control flashlight, write a value between 0-9 to /sys/class/leds/torch/brightness.
* 0 = off
* 1-6 = white
* 7-9 = orange
== See also ==
* Initial merge request
* Kernel source copied to GitLab
* Kernel source on Huawei's site
Huawei Maimang4 (huawei-rio)

== What works ==
There are ~23 variants of this device. Yours might not be fully supported yet
* Buttons
* Display (CMI_NT35532 are supported for now)
* WIFI/Bluetooth
* SD Card slot
* Touch (cyttsp5_i2c_adapter)
* Vibrator
* Notification LED
* Torch/Flash missing
== How to enter flash mode ==
Hold + at the same time.
== Installation ==
# Unlock the bootloader. See Bootloader#Huawei
# Install lk2nd. Although Huawei already provides a Fastboot interface, lk2nd contains various quirks for booting mainline.
# Please follow the Installation guide. Enable nonfree firmware for WIFI/BT/GPU
# Follow the steps displayed at the end of output the previous command to finally flash postmarketOS.
== Users owning this device ==
== Links ==
*
Huawei Maimang 5 (huawei-milan)

== Contributors ==
* Bzy-080408
== Fastboot Mode ==
When you access Fastboot Mode, you can view information about the SoC and whether the bootloader (DEVICE STATE) is locked or unlocked.
While in Fastboot Mode you can use a computer to issue Fastboot commands to flash firmware to the device and manage the current slot that the bootloader is using to boot the operating system.
You can also use + to select an action from the menu at the top of the screen, and to select the action; which include powering off the device, continuing booting to the operating system, and restarting the bootloader which is useful if Fastboot commands are failing.
=== Enter Fastboot Mode ===
With the device unplugged and powered off, hold + + . Once you feel the device power on, continue holding + until you reach Fastboot Mode.
=== Unlock the bootloader ===
Before installing postmarketOS you have to unlock your bootloader. 
==== If your device is not carrier locked ==== 
The following is all that's needed to unlock the bootloader:
* If you does not have the ,please buy it with e.g. Taobao or ask a friend to help you e.g. Coolapk or XDA
* Refer to "how to enter flash mode" above to get into fastboot mode, then re-attach your USB cable. Run the following command on your host:
fastboot oem unlock bootloader-code
* Read the message displayed on your device screen, once you're happy confirm the unlock. THIS WILL ERASE YOUR DEVICE.
== Installation ==
Use pmbootstrap to build your own installation image.
$ pmbootstrap init
$ pmbootstrap install --fde
== Panel ==
Type 	Supported
boe_otm1906c_5p5_1080p_cmd 	need test
boe_td4322_5p5_1080p_cmd 	need test
boe_test1906c_5p5_1080p_cmd 	need test
ctc_nt35596s_5p5_1080p_video 	need test
ctc_otm1906c_5p5_1080p_cmd 	Yes
jdi_r63452_5p5_1080p_cmd 	Yes
tianma_fic8736_5p5_1080p_cmd 	need test
tianma_focal8716_5p5_1080p_video	Yes
tianma_otm1906c_5p5_1080p_cmd 	need test
== Audio ==
Only speaker is not supported yet.
== Modem ==
Modem works since 6.7.2. The SMS,calls and mobiledata workes by chinese SIM.
== Parts ==
=== Touchscreen ===
Type 	Vendor 	Supported
RMI4 	Synaptics	Partially (disabled in dts)
Ft5x06	EDT 	Yes
== Serial UART ==
Huawei put UART to type-c port,if you want to use it,you need to make a "Engineering line" by yourself
== See also ==
Huawei Mediapad 10 Link+ (huawei-s10-231u)

== Contributors ==
* Bastindo
== Users owning this device ==
== How to enter flash mode ==
* Fastboot: Hold + or enable USB debugging in Android and do adb reboot bootloader.
* Bootloader is weird, it seems like it can be unlocked easily but my tablet semi-bricked itself after successfully booting a custom recovery. (Can still boot to unmodified Android system by using fastboot reboot, but it does not boot normally. Recovery doesn't boot at all.)
== Installation ==
not yet
== Mainline Kernel ==
See Huawei_Ascend_P7_(huawei-sophia)#Mainline_Kernel
== See also ==
* Various old custom recoveries
* Kernel source that might work (Same as Huawei Ascend P7)
Huawei Mediapad M5 pro (huawei-cameron)

== Contributors ==
* JohnBergago
== Device owners ==
== How to enter flash mode ==
With power off, press power und volume-down at the same time, with the usb-cable plugged in. 
== How to flash ==
As Huawei changed the partition layout, there is no boot partition anymore. Instead there is a ramdisk and a seperate kernel partition. In order to create the correct images the following steps need to be done:
# Get mkbootimg and unpackbootimg i.e. from here.
# You can extract the kernel-image and ramdisk from the created boot.img with unpackbootimg. 
#:
$ # copy created boot image to current directory 
$ cp ~/.local/var/pmbootstrap/chroot_rootfs_huawei-cameron/boot/boot.img-huawei-cameron .
$ # extract the created boot.img
$ mkdir pmos-boot-huawei-cameron
$ unpackbootimg -i boot.img-huawei-cameron -o pmos-boot-huawei-cameron/ 
$ # copy created boot image to current directory
$ cp ~/.local/var/pmbootstrap/chroot_rootfs_huawei-cameron/boot/boot.img-huawei-cameron .
$ # extract the created boot.img
$ mkdir pmos-boot-huawei-cameron
$ unpackbootimg -i boot.img-huawei-cameron -o pmos-boot-huawei-cameron/ 
#: Use the extracted files in the following steps.
# Create ramdisk image:
#:
$ # create new ramdisk image with empty kernel (empty.file size is 0) 
$ ./android-unpackbootimg/mkbootimg.py --kernel empty.file --ramdisk pmos-boot-huawei-cameron/boot.img-huawei-cameron-ramdisk.gz --cmdline 'buildvariant=user' --os_version 8.0.0 --os_patch_level 2018-06-05 -o pmos-cameron.ramdisk.img 
# Create kernel image:
#:
$ # kernel (with empty.file size is 0):
$ mkbootimg.py --kernel pmos-boot-huawei-cameron/boot.img-huawei-cameron-zImage --ramdisk empty.file --cmdline 'loglevel=4 initcall_debug=y page_tracker=on slub_min_objects=16 unmovable_isolate1=2:192M,3:224M,4:256M printktimer=0xfff0a000,0x534,0x538 androidboot.selinux=enforcing buildvariant=user' --base 0x0 --kernel_offset 524288 --ramdisk_offset 130023424 --second_offset 15728640 --tags_offset 0x7a00000 --os_version 8.0.0 --os_patch_level 2018-12 -o pmos-cameron.kernel.img
# Flash ramdisk and kernel with fastboot:
#:
$ fastboot flash kernel pmos-cameron.kernel.img 
$ fastboot flash ramdisk pmos-cameron.ramdisk.img 
== Additional Kernel Configuration ==
=== OASES ===
==== About ====
OASES stands for Open Adaptive Security Extensions. Its a Tradmark of Baidu and seems to have something todo with adaptive kernel live-patching. For now there were no disadvantages from disabling it.
==== Location in menu ====
 -> Device Drivers
 -> Huawei Platform Drivers
 -> Huawei platform drivers support (HUAWEI_PLATFORM [=y]) 
In Order to compile the kernel OASES had to be disabled. 
== Additional Info ==
The display brightness can be set by writing a value between 0 and 9960 to /sys/class/leds/lcd_backlight0/brightness. 
$ sudo -i
# echo 1024 > /sys/class/leds/lcd_backlight0/brightness 
For now the backlight is completely dark when the system boots.
== Links ==
* Kernel Sources with adapted dtc tool to build in fakeroot of pmbootstrap
* initial MR
Huawei Mediapad T1 10 A21L (hwt1a21l)

== Contributors ==
* lagertonne
== Users owning this device ==
== Architecture ==
== Accessing the UART ==
To access the UART, the backplate has to be removed (be careful with the wire between the screen and the mainboard).
The UART can be accessed, by soldering wires to the pads visible in the picture below
== How to enter flash mode ==
== Installation ==
Use pmbootstrap to build your own installation image.
$ pmbootstrap init
$ pmbootstrap install
== See also ==
Huawei Mediapad T3 10 (huawei-agassi)

== Contributors ==
* NekoCWD
== Users owning this device ==
== Bootloader unlocking ==
1) Enable OEM Unlocking
2) Disconnect battery
3) Short EDL points
4) Connect battery
5) Backup whole flash
edl rl backup
6) Download generic bootloader for your device from bootloaders repo
7) Flash bootloader partitions to device
edl wl AGS-LXX
8) Reboot to fastboot (Power+Vol -)
9) Start unlocking procedure
fastboot oem unlock
10) Continue unlocking procedure 
fastboot oem unlock-go
Your device is unlocked now. But it won't boot into android because of wrong board-id in device tree.
== LK2nd ==
Use this guide
To build LK2nd for this device you need to add additional option to make 
make TOOLCHAIN_PREFIX=arm-none-eabi- lk2nd-msm8952 LK2ND_ADTBS="msm8917-huawei-agassi.dtb" LK2ND_COMPATIBLE="huawei,agassi"
== MPV configuration ==
This is a MediaPad. We need to play some media on it.
MPV is a lightweight player. But its OSD is awful on our screen configuration.
To make it more usable let's configure it.
In first of all make configuration directories:
mkdir -p ~/.config/mpv/script-opts
Open ~/.config/mpv/mpv.conf and configure basic mpv behavior:
profile=fast # Worse quality, but no lags
hwdec=auto # Use best decoder
fs=yes # Open MPV in fullscreen mode
=== OSD is too small? ===
Open ~/.config/mpv/script-opts/osc.conf and configure OSC:
layout=box # Best layout for touchscreen imo
scalewindowed=4 # Show big controls
scalefullscreen=4 # Show big controls
== Test Points ==
== See also ==
My 6.12 kernel tree
Huawei P9 lite (huawei-venus)

== Contributors ==
* TAO_Croatia
== Users owning this device ==
* LeoTech10
== How to enter flash mode ==
To unlock the bootloader, a working method is using PotatoNV.
Hold + to boot into fastboot mode
== Additional Info ==
The display brightness can be set by writing a value between 0 and 255 to /sys/devices/platform/hisi_fb.1048577/leds/lcd_backlight0/brightness. 
Initially it contains the value 102, but the display is dark. Sending a value one time seems to wake up the display.
$ sudo -i
# echo 255 > /sys/devices/platform/hisi_fb.1048577/leds/lcd_backlight0/brightness
== See also ==
* Initial merge request
Huawei Watch (huawei-sturgeon)

== Contributors ==
* Timbz
== Users owning this device ==
== How to enter Fastboot mode ==
# Hold down the power button.
# The watch will reboot, keep holding the power button.
# Wait for the first vibration, release the power button and then immediately tab it again.
== Installation ==
First build the image:
$ pmbootstrap init
$ pmbootstrap install
Then in order to flash it put your device in fastboot mode, and put it on the dock. Then do: 
$ pmbootstrap flasher flash_rootfs
$ pmbootstrap flasher flash_kernel
You can then either reboot or run fastboot continue to boot into postmarketOS.
== Fastboot OEM-specific commands ==
fastboot oem unlock
fastboot oem lock
fastboot oem unlock_critical
fastboot oem lock_critical
fastboot oem device-info
fastboot oem enable-charger-screen
fastboot oem disable-charger-screen
fastboot oem select-display-panel
fastboot oem get-build-number
fastboot oem get-oem-version
fastboot oem shutdown
== See also ==
* Initial merge request
* Kernel source backup
* AsteroidOS device page
Huawei Y360-U61 (huawei-y360-u61)

== Contributors ==
== Maintainer(s) ==
== How to enter flash mode ==
=== TWRP ===
Clone this Git repo: https://gitlab.com/eloydegen/huawei-y360-recovery
Use the TWRP from the repo above, because it is not upstreamed.
It could probably be installed using Linux, but it has been tested using the SP Flash Tool running on Windows. A "Scatter file" (txt file of a partition scheme) is needed, determines the offset that TWRP should be flashed to. Get a copy of that file here.
Fill in the key and scatter file in the SP Flash Tool. Set a checkbox on the recovery partition and browse to the TWRP file.
Turn of the phone, connect it and click on "download", a green check should appear after a while.
Enter TWRP by pushing Vol Up + Power, then navigate to recovery.
== Installation ==
It isn't yet upstreamed into postmarketOS. Kernel copy can be found here: https://gitlab.com/eloydegen/huawei-y360-kernel
== Mainline ==
It seems there is some support for this SoC, but only UART according to kernel documentation.
== Misc info ==
* mediatek flash tool might work for this SoC too, not tested yet.
Huawei Y560 (huawei-y560)

== Contributors ==
* Worldblender
* Sonic011gamer
== Users owning this device ==
== How to enter flash mode ==
Hold the Volume Down button, and then press the Power button
== Unlocking the bootloader ==
Downgrade the bootloader & system to version B100 to be able to unlock bootloader.
1. Root your phone, you can use kingoroot for easy rooting.
2. Download stock android and recovery from here
3. Install Rashr - Flash Tool from the Play store, or download it from the internet and grant it root access.
4. Unzip the downloaded stock recovery on your internal storage.Unzip the downloaded ROM on an SDcard, or you can use ADB later.
5. Inside Rashr, choose "Recovery from storage" and select the unzipped recovery.
6. Choose "reboot" from the Rashr app.
7. After you reboot into recovery, choose either "Apply update from ADB" or "Apply update from SDcard".
8. When update finishes, restart(if it didn't already do that), enable developer settings, click on the OEM unlock setting and enable adb.
9. In a commandline run:
adb reboot-bootloader
10. The phone should reboot to a black screen/OEM image. From inside the commandline run:
fastboot oem-unlock go
== Install TWRP (optional, but recommended!) ==
1. Download TWRP from here
2. Reboot into fastboot mode.
3. Inside a commandline run:
fastboot flash recovery [drag your downloaded recovery image here]
4. It should now work to reboot into TWRP!
== Installation ==
Setup chroot. Select huawei-y560 as device.
pmbootstrap init
Build rootfs
pmbootstrap build device-huawei-y560
Build kernel
pmbootstrap build linux-huawei-y560
Flash rootfs (Note, this will install rootfs to system partition. You can optionally try to install to userdata partition with --partition userdata argument. In that case you should probably erase system partition with "sudo fastboot erase system")
pmbootstrap flasher flash_rootfs
Flash kernel
./pmbootstrap.py flasher flash_kernel
Run kernel (or you can just restart phone manually)
./pmbootstrap.py flasher boot
== See also ==
* Initial merge request
Hyprland

A dynamic tiling Wayland compositor based on wlroots "that doesn't sacrifice on its looks".
Hyprland is a colorful and animated dynamic tiling Wayland compositor that is similar to i3 and Sway, and may be considered as a facy version of SXMO.
== Observation ==
Hyprland which encapsulates the touch-friendly terminal emulator kittykitty homepage seems to be intended to those who find the concept of tiling windows useful and also like to have animations and touch interfaces.
== Potential ==
Because some people are conditioned to animated UIs, Hyprland seems to have the potential of being the best fit "real Linux on phone" showcase interface to persuade such people to migrate to postmarketOS. Also, since Hyprland supports plugins, it could be customized to accommodate a variety of user experiences.
== Use in postmarketOS ==
While not available as a postmarketos-ui package, some users have configured it to be semi-usable on mobile. See User:Earboxer/Hyprland for some mobile-specific configuration tips.
== See also ==
* Project website
* Project repository
* Project wiki
* Hyprland on Alpine Linux Wiki
== References ==
I3wm

== Status ==
i3wm is working quite well on the N900. It does not make sense to run this interface on a device without a hardware keyboard, because it is a tiling window manager. Since the N900 keyboard does not provide the same keys, as a regular keyboard does, the N900 device package has its own i3 config. It is easy to add such a config to your device as well, just look at how it's done in device-nokia-n900, modify your device package accordingly and make a pull request.
== Installation ==
Run pmbootstrap init and choose i3wm in the interface section.
== Ideas ==
* How about a wallpaper for the N900 with i3wm, that is based on the postmarketOS wallpaper, but shows the keybindings on the desktop?
* Someone started working on porting this setup, which would enable touch-only devices to use it.
== Guide ==
Follow the Display guide to change and fix display related issues.
== See also ==
* Popular /r/unixporn post
* initial pull request
Category:Interface
INet Tek D70 A33

== Contributors ==
* Yourferror
== Users owning this device ==
== How to enter flash mode ==
== Installation ==
Follow the Installation_guide, use sdcard method. Then insert microSD into TF-card slot and plug the power cable, pmOS should boot. 
== See also ==
https://linux-sunxi.org/Inet_D70_A33
https://forum.clockworkpi.com/t/1-2ghz-and-beyond/5253/27
InFocus New Tab F1 (infocus-flatfish)

== Contributors ==
* Rudloff
== Maintainer(s) ==
* Rudloff
== Device owners ==
	
== How to enter flash mode ==
The original bootloader can't boot in fastboot mode so you need to flash a new one.
You can follow the instructions here.
With the new bootloader, you can now boot into fast boot mode:
* Power off the device.
* Press and HOLD the power key (do not release until after the next step)
* When the boot logo (Firefox OS Contribution Program) appears, press and HOLD the Volume+ key until the Fastboot logo appears. You may now release both buttons.
== See also ==
* Initial pull request
* More info about the SoC
* Firefox OS Tablet Contribution Program
Inet-Tek Inet-1 (inet-inet1)

This is a white-label device, you can find it rebranded as "Point of View Protab 2 XXL" and "Cherry M1007"
== Contributors ==
* MartijnBraam
== What works ==
* u-boot from mainline, installed on sd card
* loading a kernel/initrd from the sd card
== What doesn't work ==
* The kernel, the linux-postmarketos-stable needs a few items enabled to create the dtb file for the inet1, with that it should have graphcis
== Boot process ==
The Allwinner A10 (and A13) support booting from an SD card, with SD booting it checks for an executable spl at sector 8 of the inserted SD card (like bios with an MBR bootsector). Mainline u-boot can be
configured to compile u-boot-sunxi-with-spl.bin, this file can be written to the SD card at sector 8 with `dd`
dd if=u-boot-sunxi-with-spl.bin of=/dev/sdc bs=1024 seek=8
If this SD card is inserted in the tablet then it will execute u-boot from the SD card instead of the built-in allwinner bootloader, skipping all vendor code. This u-boot should load boot.scr from the first partition of the SD card which can be ext2, ext4 or fat. The boot.scr will load the kernel uimage and the initramfs from the boot partition on the sd card.
== Device info ==
* Sunxi info page
* Mainline u-boot