Msm8953 For Arm64: Driver
+-----------------------------------------------------------------------+ | MSM8953 SoC | | | | +-----------------------+ +-------------------+ +---------------+ | | | Core Cluster | | Memory Subsystem | | GPU | | | | 8x Cortex-A53 (ARM64) | | LPDDR3 Controller | | Adreno 506 | | | +-----------------------+ +-------------------+ +---------------+ | | | | +-----------------------+ +-------------------+ +---------------+ | | | Connectivity | | Multimedia | | Peripherals | | | | Hexagon DSP V56 | | Venus (Video Engine) | SPMI / PM8953 | | | +-----------------------+ +-------------------+ +---------------+ | +-----------------------------------------------------------------------+
Drivers are matched to hardware based on "compatible" strings (e.g., compatible = "qcom,msm8953-pinctrl" ). 2. Key Driver Components
The foundation of any driver on ARM64 is the . For the MSM8953, the hardware is described in arch/arm64/boot/dts/qcom/msm8953.dtsi . msm8953 for arm64 driver
On ARM64, the boot flow for an MSM8953 device generally looks like this:
If you are a developer, focus your efforts on: For the MSM8953, the hardware is described in
export ARCH=arm64 export CROSS_COMPILE=aarch64-linux-gnu- make Use code with caution.
// Example of a Device Tree inclusion for MSM8953 /dts-v1/; #include "msm8953.dtsi" #include "msm8953-common.dtsi" // Shared configuration / model = "Xiaomi Redmi Note 4X"; compatible = "xiaomi,mido", "qcom,msm8953"; ; Use code with caution. 4. Building and Deploying the Kernel for this SoC
MSM8953 integrates WCN3660B or WCN3990 (depending on variant). The driver is wlan.ko (Pronto or QCACLD).
Booting the Mainline Linux Kernel on Qualcomm Devices | Blog
At the core of ARM64 driver support is the Linux kernel. Unlike x86 architecture where hardware is often automatically discovered, ARM64 relies heavily on blobs. The driver for a specific component (like Wi-Fi or the Display) is useless without the corresponding Device Tree node that tells the kernel where the hardware physically lives in memory and what interrupts it uses.
for this SoC, this guide covers the architectural essentials and the practical steps to get your code running on a "titanium" chipset. The MSM8953 Architecture Overview The MSM8953 is an arm64 (AArch64)