arch/arm64/boot/dts/qcom/msm8916-huawei-g7.dts
Source file repositories/reference/linux-study-clean/arch/arm64/boot/dts/qcom/msm8916-huawei-g7.dts
File Facts
- System
- Linux kernel
- Corpus path
arch/arm64/boot/dts/qcom/msm8916-huawei-g7.dts- Extension
.dts- Size
- 8346 bytes
- Lines
- 435
- Domain
- Architecture Layer
- Bucket
- arch/arm64
- Inferred role
- Architecture Layer: configuration, schema, or hardware description
- Status
- atlas-only
Why This File Exists
CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.
- CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.
Dependency Surface
msm8916-pm8916.dtsidt-bindings/gpio/gpio.hdt-bindings/input/input.hdt-bindings/interrupt-controller/irq.hdt-bindings/leds/common.hdt-bindings/sound/apq8016-lpass.h
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
// SPDX-License-Identifier: GPL-2.0-only
/*
* Copyright (C) 2021 Stephan Gerhold
*/
/dts-v1/;
#include "msm8916-pm8916.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/leds/common.h>
#include <dt-bindings/sound/apq8016-lpass.h>
/*
* Note: The original firmware from Huawei can only boot 32-bit kernels.
* To boot this device tree using arm64 it is necessary to flash 64-bit TZ/HYP
* firmware (e.g. taken from the DragonBoard 410c).
* See https://wiki.postmarketos.org/wiki/Huawei_Ascend_G7_(huawei-g7)
* for suggested installation instructions.
*/
/ {
model = "Huawei Ascend G7";
compatible = "huawei,g7", "qcom,msm8916";
chassis-type = "handset";
aliases {
mmc0 = &sdhc_1; /* eMMC */
mmc1 = &sdhc_2; /* SD card */
serial0 = &blsp_uart2;
};
chosen {
stdout-path = "serial0";
};
gpio-keys {
compatible = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&gpio_keys_default>;
label = "GPIO Buttons";
button-volume-up {
label = "Volume Up";
gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
linux,code = <KEY_VOLUMEUP>;
};
};
leds {
compatible = "gpio-leds";
pinctrl-names = "default";
pinctrl-0 = <&gpio_leds_default>;
led-0 {
gpios = <&tlmm 8 GPIO_ACTIVE_HIGH>;
color = <LED_COLOR_ID_RED>;
default-state = "off";
function = LED_FUNCTION_INDICATOR;
};
led-1 {
gpios = <&tlmm 9 GPIO_ACTIVE_HIGH>;
color = <LED_COLOR_ID_GREEN>;
default-state = "off";
function = LED_FUNCTION_INDICATOR;
Annotation
- Immediate include surface: `msm8916-pm8916.dtsi`, `dt-bindings/gpio/gpio.h`, `dt-bindings/input/input.h`, `dt-bindings/interrupt-controller/irq.h`, `dt-bindings/leds/common.h`, `dt-bindings/sound/apq8016-lpass.h`.
- Atlas domain: Architecture Layer / arch/arm64.
- Implementation status: atlas-only.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.