Category:Qualcomm
🚧 | This page is a work-in-progress. Some information contained within may be inaccurate or incomplete. |
About Qualcomm
Brand of Qualcomm Incorporated | |
Name | Qualcomm Incorporated |
---|---|
Country | USA / Worldwide |
Industry | Arm, Chip |
Resources | Homepage |
Qualcomm Incorporated is a semiconductors company, and one of the biggest manufacturers of smartphone and tablet SoCs.
Booting Procedure
Qualcomm ARM SoCs make use of several bootloaders, each of which initializes and/or checks some things and then passes on execution to the next stage in the boot chain. The final stage is whatever operating system runs on the SoC. There are slight differences between the boot chains for different SoCs, here is a triplet of charts showing the boot chains of relatively recent Qualcomm SoCs.
As you can see, the main change introduced in msm8974 is the merging of SBL1, which used to consist of three bootloaders, into one, and the main change introduced in msm8996 is support for the ABL UEFI bootloader - however, in some cases, aboot is still used. These charts are not necessarily exact representations of the boot chain on a specific SoC in a specific application, since modifications can be made by manufacturers by either replacing / editing one of the later links in the chain, or by adding more bootloader stages.
A more close examination of these bootloaders will follow.
Mainline SoCs
SoC | Codenames | Arch | Year | UART | USB | Storage | Display | CPU | GPU | Pinctrl | I²C | Audio | Video | Thermal | WiFi | BT | Modem | GPS | Camera | Suspend |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Qualcomm APQ8064 | armv7 | 2013 | Y | Y | Y | Y | Y | N | Y | Y | N | Y | Y | N | ||||||
Qualcomm MSM8212 | armv7 | 2013 | Y | Y | Y | P | Y | Y | ||||||||||||
Qualcomm MSM8226 | armv7 | 2013 | Y | Y | Y | Y | P | Y | Y | Y | N | N | Y | Y | Y | N | Y | P | N | |
Qualcomm MSM8909 | armv7 | 2015 | Y | Y | Y | P | Y | Y | Y | N | P | N | N | N | ||||||
Qualcomm MSM8916 | aarch64 | 2014 | Y | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | ||
Qualcomm MSM8917 | aarch64 | 2016 | Y | Y | Y | Y | Y | Y | Y | Y | P | N | Y | Y | Y | N | P | N | ||
Qualcomm MSM8929 | aarch64 | 2014 | Y | Y | Y | P | P | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | ||
Qualcomm MSM8937 | aarch64 | 2016 | Y | Y | Y | Y | Y | Y | Y | Y | N | N | Y | Y | Y | N | N | N | ||
Qualcomm MSM8939 | aarch64 | 2014 | Y | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | Y | Y | |||||
Qualcomm MSM8940 | aarch64 | 2016 | Y | Y | Y | Y | Y | Y | Y | Y | N | N | Y | Y | Y | N | N | N | ||
Qualcomm MSM8953 | msmtitanium/apqtitanium | aarch64 | 2016 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | P | P | P |
Qualcomm MSM8960 | armv7 | 2012 | Y | P | P | Y | Y | P | ||||||||||||
Qualcomm MSM8974 | msmcopper/apqcopper | armv7 | 2013 | Y | Y | Y | Y | P | P | Y | Y | N | N | Y | Y | Y | P | N | N | N |
Qualcomm MSM8976 | Eldarion | aarch64 | 2016 | Y | P | Y | Y | P | Y | Y | Y | N | N | Y | Y | Y | P | N | N | |
Qualcomm MSM8992/MSM8994 | aarch64 | 2015 | Y | Y | P | P | Y | N | Y | B | B | |||||||||
Qualcomm MSM8996 | msmthulium/apqthulium | aarch64 | 2016 | Y | Y | P | Y | P | Y | Y | Y | Y | Y | Y | - | - | P | P | N | |
Qualcomm MSM8998 | msmcobalt/apqcobalt | aarch64 | 2017 | Y | Y | Y | P | P | N | Y | Y | Y | Y | Y | Y | P | Y | |||
Qualcomm QM215 | aarch64 | 2019 | ||||||||||||||||||
Qualcomm SC8280XP | makena | aarch64 | 2021 | Y | Y | Y | Y | Y | Y | Y | Y | P | P | Y | P | P | Y | P | P | |
Qualcomm SDM630 | msmtriton/apqtriton | aarch64 | 2017 | Y | P | Y | Y | P | P | Y | Y | N | Y | Y | Y | Y | Y | P | ||
Qualcomm SDM636 | aarch64 | 2017 | Y | P | Y | Y | P | P | Y | Y | N | Y | Y | Y | Y | Y | P | |||
Qualcomm SDM660 | msmfalcon/apqfalcon | aarch64 | 2017 | Y | P | Y | Y | P | P | Y | Y | N | Y | Y | Y | Y | Y | P | ||
Qualcomm SDM670 | sdmbat | aarch64 | 2018 | N | P | P | Y | P | Y | Y | Y | P | P | Y | Y | Y | Y | Y | ||
Qualcomm SDM845 | hoya | aarch64 | 2018 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | Y | Y | Y |
Qualcomm SM6115 | bengal | aarch64 | 2020 | |||||||||||||||||
Qualcomm SM6125 | trinket | aarch64 | 2019 | Y | Y | Y | P | N | Y | N | N | N | P | N | N | N | N | |||
Qualcomm SM6225 | khaje | aarch64 | 2021 | N | N | P | P | N | N | N | N | N | N | N | N | N | N | |||
Qualcomm SM6350 | lagoon | aarch64 | 2020 | Y | Y | Y | Y | Y | Y | Y | Y | N | N | P | Y | - | Y | N | P | |
Qualcomm SM6375 | blair | aarch64 | 2021 | Y | Y | P | N | Y | N | Y | Y | N | N | P | Y | - | Y | N | ||
Qualcomm SM7125 | rennell | aarch64 | 2020 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | P | ||||||
Qualcomm SM7150 | sdmmagpie | aarch64 | 2019/2020 | Y | Y | Y | Y | Y | Y | Y | Y | P | N | Y | Y | Y | Y | P | P | Y |
Qualcomm SM7325 | yupik | aarch64 | 2021/2022 | Y | Y | Y | Y | Y | Y | Y | Y | N | Y | Y | Y | Y | N | N | N | |
Qualcomm SM8150 | msmnile | aarch64 | 2019 | Y | Y | Y | Y | Y | Y | Y | Y | P | Y | Y | Y | |||||
Qualcomm SM8250 | kona | aarch64 | 2020/2021 | Y | Y | Y | P | Y | Y | Y | Y | Y | Y | Y | Y | |||||
Qualcomm SM8350 | lahaina | aarch64 | 2021 | P | Y | P | Y | |||||||||||||
Qualcomm SM8450 | taro | aarch64 | 2021 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||
Qualcomm SM8475 | cape | aarch64 | 2022 | Y | Y | Y | Y | Y | Y | Y | ||||||||||
Qualcomm SM8550 | kalama | aarch64 | 2022 | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||||||
Qualcomm SM8650 | lanai / pineapple | aarch64 | 2023 | Y | Y | Y | Y | Y | Y | Y | Y | Y | N | Y | Y | Y | Y | N | N | |
Qualcomm SM8750 | sun(?) | aarch64 | 2024 | Y | Y | |||||||||||||||
Qualcomm X1E80100 | hamoa | aarch64 | 2023 |
Useful Links
- Qualcomm's Chain of Trust - LineageOS
- Exploiting Qualcomm EDL Programmers (1)
- Research & Exploitation framework for Qualcomm EDL Firehose programmers
- Little Kernel Boot Loader Overview
- Reverse Engineering Android's Aboot
- Qualcomm Linux Modems by Quectel & Co
- Comparing Qualcomm's XBL UEFI bootloaders on Snapdragon 820, 835, and 845
- EBL Wiki
- Examining Pointer Authentication on the iPhone XS
- Full Trustzone Exploit for MSM8974
- Pointer authentication on armv8.3-a
- an EL1/EL3 coldboot vulnerability affecting 7 years of LG Android devices
Pages in category "Qualcomm"
The following 45 pages are in this category, out of 45 total.
G
Q
- Qualcomm IPQ4019
- Qualcomm SDM845 (qualcomm-sdm845)
- Qualcomm Snapdragon 200 (MSM8212)
- Qualcomm Snapdragon 210 (MSM8909)
- Qualcomm Snapdragon 400 (MSM8226)
- Qualcomm Snapdragon 410/412 (MSM8916)
- Qualcomm Snapdragon 415/615/616 (MSM8929/MSM8939)
- Qualcomm Snapdragon 425/427/430/435 (MSM8917/MSM8920/MSM8937/MSM8940)
- Qualcomm Snapdragon 450/625/626/632 (MSM8953)
- Qualcomm Snapdragon 600 (APQ8064)
- Qualcomm Snapdragon 650/652/653 (MSM8956/MSM8976)
- Qualcomm Snapdragon 660/630/636 (SDM660/SDM630/SDM636)
- Qualcomm Snapdragon 662 (SM6115)
- Qualcomm Snapdragon 665 (SM6125)
- Qualcomm Snapdragon 670 (SDM670)
- Qualcomm Snapdragon 680 (SM6225)
- Qualcomm Snapdragon 690 5G/750G (SM6350/SM7225)
- Qualcomm Snapdragon 695 5G (SM6375)
- Qualcomm Snapdragon 710 (SDM710)
- Qualcomm Snapdragon 720G (SM7125)
- Qualcomm Snapdragon 730/730G/732G (SM7150)
- Qualcomm Snapdragon 778G/778G+/782G (SM7325)
- Qualcomm Snapdragon 8 Elite (SM8750)
- Qualcomm Snapdragon 8 Gen 1/8+ Gen 1/7+ Gen 2 (SM8450/SM8475/SM7475)
- Qualcomm Snapdragon 8 Gen 2 (SM8550)
- Qualcomm Snapdragon 8 Gen 3 (SM8650)
- Qualcomm Snapdragon 800/801 (MSM8974)
- Qualcomm Snapdragon 808/810 (MSM8992/MSM8994)
- Qualcomm Snapdragon 820/821 (MSM8996)
- Qualcomm Snapdragon 835 (MSM8998)
- Qualcomm Snapdragon 845/850 (SDM845/SDM850)
- Qualcomm Snapdragon 855 (SM8150)
- Qualcomm Snapdragon 865/865+/870 (SM8250)
- Qualcomm Snapdragon 888 (SM8350)
- Qualcomm Snapdragon 8cx Gen 3 (SC8280XP)
- Qualcomm Snapdragon S1 (MSM7225A)
- Qualcomm Snapdragon S1 (QSD8250)
- Qualcomm Snapdragon S4 Play (MSM8225)
- Qualcomm Snapdragon S4 Plus (MSM8960)
- Qualcomm Snapdragon S4 Plus/400 (MSM8227/MSM8930)
- Qualcomm Snapdragon X Elite (X1E80100)