nyuuzyou/wikis huggingface dataset:
Samsung Galaxy A12s (samsung-a127f)

== Contributors ==
* famfo
== Users owning this device ==
== Current status ==
* ported uniLoader
* wrote an initial device tree
* loads into initramfs
* crashes in initramfs on clock init
== How to enter flash mode ==
Press both volume up and volume down while booting the device to enter Odin.
== Installation ==
=== Using pmbootstrap ===
Follow Installation/Using pmbootstrap. When asked for the device's vendor/codename, select FIXME as the vendor and FIXME as the codename. 
To flash the image to the device:
* Enter flashing mode (see #How to enter flash mode)
* Run pmbootstrap flasher flash_kernel to flash the kernel
* Run pmbootstrap flasher flash_rootfs
== See also ==
Samsung Galaxy A20

== Contributors ==
* Arpio
== Maintainer(s) ==
* Arpio
== Users owning this device ==
== Installation ==
1. Use: pmbootstrap install --android-recovery-zip --recovery-install-partition=data
2. Copy to Internal SD-Card
2. Boot to TWRP
3. Wipe Dalvik, Cache, Data
4. Format Data -> YES
5. Unmount everything except external sd card.
6. Install the zip file from your sdcard. You will see errors "Failed to mount /data", don't worry about.
7. Now reboot to system
Samsung Galaxy A20e (samsung-a20e)

== Contributors ==
AlinTriesPorting, MatthieuDev
== Users owning this device ==
==Resolved compiling issues==
ANDROID_MAJOR_VERSION
Solved with a patch from another Samsung device.
==Stuff needed to make it run faster==
Vendor kernel
Different files matter, but I don't know which ones are essential for making the vendor.
==How to enter Download mode==
Press and hold while connecting a USB-A or Type C to Type C cable to a device. When you see a warning screen, press .
==How to unlock the bootloader==
Go to , then tap the version number/build number 7 times until you see the "Developer options has been enabled" message. Go back to the settings page, tap on "Developer Options" then enable "OEM unlocking".
After this, turn off the phone, then press and hold while connecting a USB-A or Type C to Type C cable to a device. If you enter recovery or the phone starts normally, shut down/reboot and try again. When you see a warning screen, press and hold until you see a message regarding the bootloader being unlocked. Press to unlock the bootloader.
==Things I used for this port==
Kernel used for the port
Another Kernel used
Samsung Galaxy A21s

== Contributors ==
* RiskyGUY22
== Users owning this device ==
RiskyGUY22
== How to enter flash mode ==
== Installation ==
Use pmbootstrap to build your own installation image.
$ pmbootstrap init
$ pmbootstrap install --android-recovery-zip --recovery-install-partition data
$ pmbootstrap export ./
Flash the generated .zip file in TWRP. Adb sideloading (in TWRP) is also supported. Other recoveries are untested
== See also ==
Samsung Galaxy A2 Core (samsung-a2corelte)

Samsung Galaxy A2 Core is an entry-level Exynos 7870 device released by Samsung in 2019.
== Contributors ==
* naproxen
== Users owning this device ==
== How to enter flash mode ==
When the phone is powered off, insert the USB cable while holding the and buttons to boot into download mode. A turquoise colored screen will appear, asking for confirmation. Press to confirm. Your device is ready for flashing via a front-end such as Odin or Heimdall.
To boot into recovery, hold the and buttons. 
== Installation ==
=== Prerequisites ===
Make sure your phone:
* Has its bootloader unlocked.
=== Preparation ===
Choose the following in the pmbootstrap init wizard:
 Vendor: samsung
 Device codename: a2corelte
To proceed with the installation run:
 $ pmbootstrap install
This will begin preparing your installation in your host computer.
=== Flashing ===
After the installation process is completed, get your phone booted into download mode, Then run:
 $ pmbootstrap flasher flash_kernel
The kernel gets flashed to your device. Now, the device will reboot automatically. Hold the key combination to reboot into download mode. Then run:
 $ pmbootstrap flasher flash_rootfs
The rootfs is flashed and the device gets rebooted.
It should reboot to postmarketOS now.
== Partial features ==
=== Battery ===
The fuelgauge driver (reports the charge percentage) works fine, but there's no charger driver which is responsible for reporting charge status and control.
=== Screen ===
Display works with simple-framebuffer, so brightness control is non-functional. Samsung DECON/DSIM driver for Exynos 7870 is a work-in-progress, which will properly initialize and use the display.
== Problems ==
=== USB Networking ===
At least on some operating systems, the host doesn't receive network packets from the device, unless the host sends packets to the device. Due to this behavior, SSH (among other things) doesn't work well. A workaround is to have ping -Aq <IP> run in the background while you interact with the device (replace <IP> with the device IP address).
=== Wi-Fi ===
Wi-Fi behaves very erratically (practically unusable) when the SDIO is probed in DMA mode. The driver fails to communicate with the SDIO, reporting timeout errors. As a workaround, the SDIO is forced to be probed in PIO mode.
== Debugging (retrieving kernel logs) ==
Read this.
== See also ==
 Initial merge request
Samsung Galaxy A30 (samsung-a30)

== Contributors ==
Johnnyhandsome69
== Maintainer(s) ==
Johnnyhandsome69
== Users owning this device ==
== Installation ==
1. Use: pmbootstrap install --android-recovery-zip --recovery-install-partition=data
2. Copy pmos-samsung-a30.zip to external sdcard
3. Boot into TWRP
4. Format Data
5. Wipe Dalvik, Cache, Data
6. Mount External SD Card Only
7. Install zip file (If you see failed to mount /data, ignore it)
8. Reboot to system
== Tested UIs ==
* weston
* xfce4
* plasma-desktop
* GNOME
* Sxmo-de-dwm
== See also ==
* Initial merge request
Samsung Galaxy A32 4G (samsung-a32)

== Contributors ==
* Veronika Bušová
== Maintainer(s) ==
* Veronika Bušová
== Users owning this device ==
== How to enter flash mode ==
Hold while plugging into computer. Then press to confirm.
== Unlocking the bootloader ==
# Reboot device into Download Mode (as shown before)
# Hold button for few seconds and then confirm by pressing again.
== Useful links ==
* Initial merge request
* Unofficial LineageOS device tree (GitHub)
* Unofficial LineageOS kernel tree (GitHub)
* XDA Developers thread
* Potential mainline kernel (GitLab)
== References ==
Samsung Galaxy A34 5G (samsung-a34x)

== Users owning this device ==
== How to enter Download Mode ==
* Power off the device completely.
* Hold and and plug your device into a computer.
== How to unlock the bootloader ==
THIS WILL WIPE YOUR INTERNAL STORAGE!!
* Enter Download Mode.
* Hold until it asks you for confirmation.
* Your phone should wipe itself and reboot into Android.
== How to enter into recovery ==
* Shutdown the phone completely.
* Press and button simultaneously to enter the recovery.
== Kernel source issues ==
Every source release does not have connectivity drivers. There is a fork of the kernel with the connectivity drivers coming from OnePlus OSRC.
== See Also ==
* Samsung OSRC releases
Samsung Galaxy A3 2015 (samsung-a3)

== Contributors ==
* Mis012
* Minecrell
== Users owning this device ==
== WiFi ==
If your WiFi connection is unstable, consider disabling Bluetooth.
# rfkill block bluetooth
== Ambient Light/Proximity Sensor ==
The driver for cm36652 ambient light/proximity sensor is not available.
== Hardware details (hwtest) for SM-A300F ==
Category 	Model 	Path 	Status 	Value
framebuffer 	msm 	/sys/class/graphics/fb0 	Working	U:540x960p-0
drm 	 	/sys/class/drm/card0-DSI-1 	Working	540x960
magnetometer 	bmc150_magn 	/sys/bus/iio/devices/iio:device2	Working	0.4, -0.52, -0.78 gauss
accelerometer	bmc150_accel 	/sys/bus/iio/devices/iio:device1	Working	-8.89, -0.94, -4.25 g
temperature 	bmc150_accel 	/sys/bus/iio/devices/iio:device1	Working	20.5 deg C
vibrator 	pwm-vibrator 	/dev/input/event6 	Working	
input 	samsung-a2015 Headset Jack 	/dev/input/event7 	Working	
input 	tm2-touchkey 	/dev/input/event5 	Working	
input 	Zinitix Capacitive TouchScreen	/dev/input/event4 	Working	
input 	GPIO Hall Effect Sensor 	/dev/input/event3 	Working	
input 	GPIO Buttons 	/dev/input/event2 	Working	
input 	pm8941_resin 	/dev/input/event1 	Working	
input 	pm8941_pwrkey 	/dev/input/event0 	Working	
Note: this SM-A300F scored whet_dhry = 915.5, comparable to other Snapdragon 410.
== See also ==
* Samsung Galaxy A5 2015 (samsung-a5)
* Samsung Galaxy A7 2015 (samsung-a7)
* near-mainline linux fork with device-specific patches
* secondary bootloader based on qcom's/codeaurora's ugly lk fork. Provides fastboot
== References ==
Samsung Galaxy A3 2017 (samsung-a3y17lte)

== Contributors ==
* mimi89999
== Maintainer(s) ==
== Users owning this device ==
== How to enter flash mode ==
When the device is fully powered off, hold Power, Volume Down and Home for a few seconds.
A (turquoise) download mode warning screen should appear, press Volume Up to confirm.
== Installation ==
It is recommended to sideload an android recovery zip through TWRP for the easiest process, since heimdall freaks out about the subpartitions in SYSTEM and won't move past ~7%.
$ pmbootstrap install --android-recovery-zip
$ pmbootstrap flasher --method=adb sideload
== Tested UIs ==
* xfce4
* mate
* plasma-desktop
== See also ==
* Initial merge request
* 
*
Samsung Galaxy A41 (samsung-a41)

== Unlocking the bootloader ==
Unlocking the bootloader on these samsung phones is a bit weird, and there is a lot of conflicting information available.
1. Make sure everything important is backed up as everything will be wiped
2. Turn on "OEM Unlocking" inside developer options.
3. Turn off the phone.
4. Press both volume up and volume down and plug in the USB cable (can be charger) to enter download mode.
5. When in download mode long press the volume up key to enter unlock mode.
6. In the next screen press the up volume button until the phone restarts.
7. Now that you might think that it is done, Samsung has another surprise for us, VaultKeeper. To make it allow flashing unverified images you must go through the first time setup and connect to an internet connection.
8. After that enter the developer settings again and verify that "OEM Unlocking" is enabled and greyed out.
Samsung Galaxy A50 (samsung-a50)

== Contributors ==
== Users owning this device ==
== Status ==
* Kernel compiled!
* Can't build yet, don't know how to install dtb files
== How to install TWRP on your Samsung A50 ==
* Watch this xda Thread : https://forum.xda-developers.com/t/recovery-r-oneui3-1-twrp-v3-4-0-for-samsung-galaxy-a50-unofficial.4210527/
== How to enter Recovery mode ==
* Turn the phone off
* Connect phone to a computer, otherwise it will boot into system
* Wait for the phone to show battery percentage
* Hold and button
* Release button when Samsung logo appears and keep holding button until you see the TWRP recovery Logo
== Installation ==
== See also ==
== Credits ==
Thanks to TenSeventy7 for the Kernel.
== Sources ==
Kernel : https://github.com/FreshROMs/android_kernel_samsung_exynos9610_mint
Samsung Galaxy A51 (samsung-a51)

== Contributors ==
* manoedinata
== Users owning this device ==
== How to enter recovery/Odin mode ==
* Press and hold + simultaneously while device is powered off, then plug USB cable in for Odin mode.
* Press and hold + + simultaneously while device is powered off for recovery mode.
* Press and hold + simultaneously for 7-8 seconds while device is powered on to force reboot. Once time is up immediately release the keys and press one of combinations above before boot logo appears, otherwise device will boot normally.
== Installation ==
Use pmbootstrap to build your own installation image. The device configuration will also build firmware package, which contains required proprietary blobs for Wi-Fi.
Due to limitations, you will have to use the "userdata" partition as PostmarketOS' root partition. This can be done by adding "--recovery-install-partition=data" to your "pmbootstrap install" command.
Heimdall installation is untested. Use Installation_from_recovery_mode instead.
== Known Working ==
* Touchscreen
* Display (with Samsung's DECON driver)
* Framebuffer (additionally with msm-fb-refresher to refresh the screen)
* Charging & battery status
* Volume (tested on XFCE)
* Screen brightness changing (partially)
* Wi-Fi (partially, with firmware package)
== Notes ==
=== USB Networking ===
The device isn't detected on the computer while plugged in through USB cable. dmesg on host shows nothing related to new device being connected. While similar device like Samsung Galaxy Note 9 (Exynos) (samsung-crownlte) and Samsung Galaxy S8 (samsung-dreamlte) uses additional initramfs hook, that doesn't help at all - nothing in dmesg on PC.
USB Networking works without any additional setup by enabling CONFIG_USB_ETH (and additionally CONFIG_USB_ETH_RNDIS).
=== Wi-Fi ===
Although the required proprietary blobs are loaded and Wi-Fi did turn on, it can't connect to any available network. This assumption is based on attempt to connect to an AP through NetworkManager (on XFCE 4). Needs more investigation.
To enable Wi-Fi, these proprietary blobs are required to be loaded:
vendor/etc/wifi/mx
vendor/etc/wifi/mx140.bin
vendor/etc/wifi/mx140_wlan.hcf
vendor/etc/wifi/mx140_wlan_sw.hcf
These files are pulled and packaged already in firmware-samsung-a51 pmaports package.
=== Framebuffer ===
Some patches are required for framebuffer to fix some issues, e.g. swapped color, missing fb0 device, etc. The last one is required to boot framebuffer-based or text interfaces with CONFIG_FRAMEBUFFER_CONSOLE, or if you want to display kernel console to the screen, otherwise the kernel panics with null pointer dereference.
== See also ==
* Initial merge request
* 
*
Samsung Galaxy A52 4G (samsung-a52q)

== Contributors ==
* User:Map220v
* User:Chaosleo07
== Users owning this device ==
== How to enter flash mode ==
Press and hold + while plugging it in the Computer. Then click to confirm.
== Unlocking the Bootloader ==
!!!WARNING!!! 
This will reset your device to Factory settings and blow the Knox E-Fuse! You have been warned. 
Samsung made this easy (thankfully): Reboot into Download mode (hold down Vol+ and Vol- while plugging it into a computer) and hold down Vol+.
This way, you can also relock the bootloader (with the only benefit being that the message at the Beginning is gone, no more Knox)
== Installation ==
First, install pmbootstrap.
After that, set up the device to be used:
$ pmbootstrap init
Channel [edge]:
Vendor [samsung]: samsung <- enter this
Device codename [i9100]: a52q <- enter this
Enable this package? (y/n) [y] <- you probably want non-free firmware
User interface [plasma-mobile]: <- choose any UI by your preference. Plasma Mobile works without issues :)
...
Then, create the rootfs image (and install it on sd card if you want)
$ pmbootstrap install (--sdcard=/dev/whatever_your_sdcard_is if you want to install to sd card)
 
After that, flash the kernel by doing
$ pmbootstrap flasher flash_kernel
and if you didn't install to an SDCard, flash the rootfs by running
$ pmbootstrap flasher flash_rootfs
After installation download emptyDTBO.img and flash using heimdall or TWRP.
== Status table explanation ==
This table explains more in detail why some features are marked as partial (P) or Broken (N). Generally it's because feature works with some limitations, or is a "work-in-progress":
Component	Status	Notes
Screen 	P 	Changing brightness causes graphical artifacts(It's recommended to disable automatic brightness control)
Audio 	P 	Only audio from built in stereo speakers works.
Calls 	N 	Can recieve and make calls but call audio missing.
== Notes ==
Issues with DEs etc.:
* framebufferphone: has issues with Touch
* xorg: doesn't work/crashes on adreno 618 (wayland/xwayland works fine)
== See also ==
* Merge Request for the device
* Close-to Mainline Kernel fork that has been used
* NotebookCheck Page about the used SOC
* GSMArena page about the phone
Samsung Galaxy A52s 5G (samsung-a52sxq)

== Contributors ==
== Users owning this device ==
== How to enter flash mode ==
* Download mode: Hold and while connecting the device to a computer with a USB cable.
* Recovery mode: Hold while connecting the device to a computer with a USB cable.
== Installation ==
/* Not yet */
== See also ==
* GSMArena page
* Device Info HW page
Samsung Galaxy A53 5G (samsung-a53x)

== Contributors ==
* TenTypekMatus (HaxerMatus on pmOS wiki)
== Users owning this device ==
== How to enter flash mode ==
If not done so, go to the developer settings and enable OEM unlocking. Then reboot to Odin mode which can be done with two ways:
* 1. (Hard, but achievable) Power down the phone, then connect power cable from PC, and hold volume up with volume down simultaneously. If the turquoise menu appears, follow the steps to unlock the bootloder
* 2. (Easy) Deplete the battery (let it sit around 3 days without charging) and then do the same as in the first option.
== Installation ==
Install pmbootstrap, then initialize it and select this device. Then type these two commands:
pmbootstrap install;
pmbootstrap export --odin
As of now, flashing is possible with official tools on Linux. So download Odin4 from https://xdaforums.com/t/official-samsung-odin-v4-1-2-1-dc05e3ea-for-linux.4453423/, then download Bifrost from https://github.com/zacharee/SamloaderKotlin/releases/, since we also need BL, CP and CSC files. Then extract Bifrost, and open the binary from bin/ folder. Type SM-A536B and your region. Then hit Check for updates. It'll add ID composed from your model name and region. Hit download and go make yourself a cup of coffee, since this'll take very long. When it's done, unzip the archive, then use this command to flash the image to the device: ./odin4 -b BL_XXXX.tar.md5 -a <AP path of the pmOS archive> -c CP_XXXX.tar.md5 -s CSC_XXXX.tar.md5
== See also ==
Using prebuilt kernels
* https://xdaforums.com/t/tutorial-a53x-install-twrp-flash-custom-rom-gsi-fixes-for-almost-every-problem.4668967/
* https://en.wikipedia.org/wiki/Samsung_Galaxy_A53_5G
Samsung Galaxy A5 2015 (samsung-a5)

== Contributors ==
* minecrell
* maccraft123 (only wiki page)
== Users owning this device ==
== Partition layout ==
Disk /dev/mmcblk0: 14.68 GiB, 15758000128 bytes, 30777344 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Device Start End Sectors Name 
/dev/mmcblk0p1 8192 38911 30720 apnhlos 
/dev/mmcblk0p2 38912 156543 117632 modem 
/dev/mmcblk0p3 156544 157567 1024 sbl1 
/dev/mmcblk0p4 157568 157631 64 ddr 
/dev/mmcblk0p5 157632 161727 4096 aboot 
/dev/mmcblk0p6 161728 162751 1024 rpm 
/dev/mmcblk0p7 162752 163775 1024 qsee 
/dev/mmcblk0p8 163776 164799 1024 qhee 
/dev/mmcblk0p9 164800 170943 6144 fsg 
/dev/mmcblk0p10 170944 170975 32 sec 
/dev/mmcblk0p11 170976 192511 21536 pad 
/dev/mmcblk0p12 192512 212991 20480 param 
/dev/mmcblk0p13 212992 241663 28672 efs 
/dev/mmcblk0p14 241664 247807 6144 modemst1
/dev/mmcblk0p15 247808 253951 6144 modemst2
/dev/mmcblk0p16 253952 280575 26624 boot 
/dev/mmcblk0p17 280576 311295 30720 recovery
/dev/mmcblk0p18 311296 337913 26618 fota
/dev/mmcblk0p19 337914 352231 14318 backup
/dev/mmcblk0p20 352232 358375 6144 fsc 
/dev/mmcblk0p21 358376 358391 16 ssd 
/dev/mmcblk0p22 358392 374775 16384 persist 
/dev/mmcblk0p23 374776 393207 18432 persdata
/dev/mmcblk0p24 393208 5275639 4882432 system 
/dev/mmcblk0p25 5275640 5685239 409600 cache 
/dev/mmcblk0p26 5685240 30777303 25092064 userdata
== Plasma Mobile ==
Plasma mobile currently works on A5 2015, but you should set custom scaling factor to 2.
kscreen-doctor output.1.scale.2 should work.
To run this command from ssh session add the following env variables to the above command:
XDG_RUNTIME_DIR=/run/user/10000 QT_QPA_PLATFORM=wayland kscreen-doctor output.1.scale.2
Plasma works smoothly, but there are some graphical glitches sometimes.
== Ambient Light/Proximity Sensor ==
The driver for tmd3782 ambient light/proximity sensor is not available.
== Mobile Data ==
2G and 3G are working. 
4G is not working. Need to got to Setting, Mobile Data, Network Mode and select 2G, 3G (Preferred)
== Dual SIM ==
Samsung Galaxy A5 Duos supports dual SIM but Samsung Galaxy A5 doesn't.
== Photos ==
File:Sm-a500f-weston.jpg|thumb|left|Weston
File:Sm-a500f-phosh-01.jpg|thumb|left|Phosh Apps menu
File:Sm-a500f-phosh-02.jpg|thumb|left|Phosh About
File:Sm-a500f-phosh-03.jpg|thumb|left|Phosh Wi-Fi settings
File:Samsung-a5lte-with-operator-name.jpg|thumb|left|Plasma Mobile Home screen
File:Sm-a500f-plamo-topbar-good-scaling.jpg|thumb|left|Plasma Mobile top bar
File:Sm-a500f-plamo-02.jpg|thumb|left|Plasma Mobile About
File:Sm-a500f-plamo-03.jpg|thumb|left|Plasma Mobile Lockscreen
File:Unixbench.png|thumb|left|Unixbench
== See also ==
* Samsung Galaxy E5 (samsung-e5)
* Samsung Galaxy A3 2015 (samsung-a3)
* Samsung Galaxy A7 2015 (samsung-a7)
* Samsung Galaxy A5 2015 (samsung-a5)/Custom Partitioning
* 
* 
* A review from the polish technology channel "Internet. Czas działać!" - PeerTube link, YouTube link
== References ==
Samsung Galaxy A5 2015 (samsung-a5)/Custom Partitioning

=Erasing unused partitions/Custom formatting=
It is safe to wipe partitions /dev/mmcblk0p18-24,/dev/mmcblk0p26 without any harm being done to the bootloader. Erasing these partitions will leave only mainline kernels bootable.
If you dont need recovery mode you also could remove /dev/mmcblk0p25 and /dev/mmcblk0p17.
If you dont need android boot partition you also could remove /dev/mmcblk0p16.
==Reverting to stock from this setup==
To revert to stock, Download the stock rom and flash it via heimdall.
Samsung Galaxy A5 2016 (samsung-a5xelte)

== Contributors ==
* Natsu
== Users owning this device ==
== How to enter flash mode ==
1. power off the device.
2. press + + 
3. at the blue screen press the button to enter Odin download mode
=== Recovery ===
press + + 
== Installation ==
Flash twrp heimdall flash --RECOVERY twrp-recovery.img to recovery. (Heimdall can make some problems, just retry multiple times with rebooting device)
Install recovery zip pmbootstrap install --android-recovery-zip.
Inside twrp, choose "ADB Sideload" and run pmbootstrap flasher --method=adb sideload
== See also ==
LOS