ImjTool is very handy for working with firmware images
The Android Device Database aims to capture shell command output from representative Android devices, so that researchers will be able to get an idea of device and vendor idiosyncrasies even if they don't have the actual device for testing. The idea is to run a few common commands and a few tools of mine, capturing the output. This will take 2-3 minutes if you have a device, and will benefit many others who don't. I will add the firmware images so as to help static analysis.
This is a work in progress. Check Pixel 4 or Fire HD 10 for a sampleNow with rooted images:
fastboot boot ...imgrather than
fastboot flash....if you want to be able to go back to a non-rooted config at will, after reboot - note that
fastbootmight need to be run as
|SoC||Phone model||Rooted image|
|Tensor||Pixel 6 (Mine, rooted)||Rooted boot.img vbmeta.img|
|SoC||Phone model||Rooted image|
|SnapDragon 480 (SM4350)||OnePlus Nord N200 Thanks to syscall7!)|
|SnapDragon 636 (SDM636)||Motorola One Power Thanks @Hasaber8!)|
|SnapDragon 730 (SDMMAGPIE)||Pixel 4a (Thanks, RTNers!)||rooted boot.img|
|SnapDragon 735 (SM7150)||Redmi K30 (Thanks, @kacskrz!)|
|SnapDragon 765 (SM7250)||Pixel 5 (mine, 13.0, rooted)||Rooted boot.img|
|SnapDragon 821 (msm8996)||Pixel |
|SnapDragon 835 (msm8998)||Pixel 2 (XL)||rooted boot.img|
|SnapDragon 845 (SD845)||Pixel 3 (XL)|
|HTC Exodus 1 (mine, not rooted yet)|
|One Plus 6 (Thanks, @SavioLukio!)|
|SnapDragon 855 (SD8150)||Samsung S10+ (US/CA)|
|Pixel 4 (mine, rooted, 11.0) (Partition images)||Rooted boot.img|
|SnapDragon 865 (SD8250)||IQOO3 (Many Thanks, Kishan Vyas of XDA!)|
|OppoFindX2Pro (Many Thanks to Chen Tingyi!)|
|Nubia RedMagic 5G (mine, rooted)||Rooted boot.img|
|SnapDragon 888 (SD8350)||Xiao Mi Mi11 (Many MANY thanks to Ge, who rooted his Mi11!)|
|Nubia RedMagic 6 (mine, not rooted yet)|
|Oculus Quest II (OTA image)|
|Samsung S21 (US) (Thanks to S. Lagler)|
|Snapdragon 8 Gen 1 (SM8450)||Motorola X30 Edge (非常感谢, 樊乙麟)|
|Nubia RedMagic 7 (mine, rooted)||Rooted boot.img|
|Samsung S22Ultra (QCom) (mine)|
|Exynos 9810||Galaxy S9 (non-US)|
|Exynos 9820||Galaxy S10 (non-US)|
|Exynos 990||Galaxy S20 (non-US) - Mine, rooted|
|Galaxy S20/S20Ultra (non-US) - Many thanks to A. Thomas!!|
|Exynos 2100||Galaxy S21 (non-US) - Toda Raba, Keren!!|
|Kirin659||LLD-L31 (Honor 9 lite)|
|MT6580 (lowly 32-bit)||"S20" knockoff... (partitions)|
|...||Amazon Echo Dot (1st Gen)|
|MT6757 (P20)||Sony Xperia A1 Ultra (Thanks, Dmitry!)|
|MT6765 (P35)||Vivo Y83A (Partition images) (Mine, rooted thanks to Diplomatic's excellent mtk-su root!)|
|MT6889 (Dimensity 1000)||Vivo iQOO Z1 5G (mine, not rooted yet)|
|MT6893 (Dimensity 1200)||RealME GT Neo (mine, not rooted yet)|
|MT8183||Amazon Fire HD 10 (2019) (mine, rooted, Partition images)|
|SC6820i||Samsung Galaxy Star Plus (Thanks, Dmitry!)|
|SC9832e||Alldocube iPlay 7T|
|ums9230T (T616)||RealMe C35 (mine, not rooted yet)|
Get adb shell to a (preferably rooted) device with a chipset not listed here, and run the following commands:
cat /proc/cpuinfo: To get the CPU architecture and details
cat /proc/version: To get the running kernel version
cat /proc/partitions: To get the partition map (might need root)
df: To get the mounted partitions stats
ls -l /dev: To get a list of all device nodes (useful for determining standard Linux, AOSP and vendor/BSP additions)
ls -l /dev/block/platform/*/*/by-name: To get the partition names (might require root. As of Android 10,
dumpsys: For a dump of all services
getprop: To get all the properties set on the device
getevent: To get a list of input devices (after which you can press CTRL-C)
service list: To get a list of all binder services
ps -Zefw: To get a list of all processes and kernel threads on your device (w = boundless width)
ls -l /sys/module: To get a list of all modules, compiled in or loaded.
lsmodwould also be appreciated if you have loaded modules.
lshal- to list HW HALs
bindump users alland
bindump vndbinder users all.
lsof- this really helps
ls -lR /root (otherwise all the good stuff is denied..). This will be a huge file of O(60M), so please gzip before submitting.
The easiest way to get all this output is by running "script" on your MacOS or Linux host before "adb". this logs everything you do (until you type "exit") into a file called "typescript" - which is what I need. Thank you!
If your device identifies as a known chipset listed here, it probably doesn't make sense to list it here unless the outputs of the above commands greatly differ (e.g.
service list) or are from some esoteric brand.
If you can help, feel free to email me - ddb@... And I thank you in advance.